mirror of
https://github.com/opencv/opencv.git
synced 2025-06-09 10:40:46 +08:00
fix the perf tests of OpenCV.js so that it can run on Node.js successfully
This commit is contained in:
parent
bf03f5fa3a
commit
8d232a63ad
@ -1,5 +1,10 @@
|
|||||||
if (typeof window === 'undefined') {
|
if (typeof window === 'undefined') {
|
||||||
var cv = require("../opencv");
|
var cv = require("../opencv");
|
||||||
|
if (cv instanceof Promise) {
|
||||||
|
loadOpenCV();
|
||||||
|
} else {
|
||||||
|
cv.onRuntimeInitialized = perf;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let gCvSize;
|
let gCvSize;
|
||||||
@ -24,6 +29,10 @@ function getCvSize() {
|
|||||||
return gCvSize;
|
return gCvSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function loadOpenCV() {
|
||||||
|
cv = await cv;
|
||||||
|
}
|
||||||
|
|
||||||
if (typeof window === 'undefined') {
|
if (typeof window === 'undefined') {
|
||||||
exports.getCvSize = getCvSize;
|
exports.getCvSize = getCvSize;
|
||||||
}
|
}
|
@ -1,3 +1,10 @@
|
|||||||
|
const isNodeJs = (typeof window) === 'undefined'? true : false;
|
||||||
|
|
||||||
|
if(isNodeJs) {
|
||||||
|
var Base = require("./base");
|
||||||
|
global.getCvSize = Base.getCvSize;
|
||||||
|
}
|
||||||
|
|
||||||
var fillGradient = function(cv, img, delta=5) {
|
var fillGradient = function(cv, img, delta=5) {
|
||||||
let ch = img.channels();
|
let ch = img.channels();
|
||||||
console.assert(!img.empty() && img.depth() == cv.CV_8U && ch <= 4);
|
console.assert(!img.empty() && img.depth() == cv.CV_8U && ch <= 4);
|
||||||
@ -56,8 +63,8 @@ var smoothBorder = function(cv, img, color, delta=5) {
|
|||||||
|
|
||||||
var cvtStr2cvSize = function(strSize) {
|
var cvtStr2cvSize = function(strSize) {
|
||||||
let size;
|
let size;
|
||||||
|
|
||||||
let cvSize = getCvSize();
|
let cvSize = getCvSize();
|
||||||
|
|
||||||
switch(strSize) {
|
switch(strSize) {
|
||||||
case "127,61": size = cvSize.szODD;break;
|
case "127,61": size = cvSize.szODD;break;
|
||||||
case '320,240': size = cvSize.szQVGA;break;
|
case '320,240': size = cvSize.szQVGA;break;
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,11 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.constructMode = HelpFunc.constructMode;
|
||||||
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
@ -25,7 +29,7 @@ function perf() {
|
|||||||
}
|
}
|
||||||
let totalCaseNum, currentCaseId;
|
let totalCaseNum, currentCaseId;
|
||||||
|
|
||||||
//extra color conversions supported implicitly
|
// extra color conversions supported implicitly
|
||||||
{
|
{
|
||||||
cv.CX_BGRA2HLS = cv.COLOR_COLORCVT_MAX + cv.COLOR_BGR2HLS,
|
cv.CX_BGRA2HLS = cv.COLOR_COLORCVT_MAX + cv.COLOR_BGR2HLS,
|
||||||
cv.CX_BGRA2HLS_FULL = cv.COLOR_COLORCVT_MAX + cv.COLOR_BGR2HLS_FULL,
|
cv.CX_BGRA2HLS_FULL = cv.COLOR_COLORCVT_MAX + cv.COLOR_BGR2HLS_FULL,
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,11 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.fillGradient = HelpFunc.fillGradient;
|
||||||
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -17,7 +17,10 @@ function perf() {
|
|||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase;
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -16,8 +16,13 @@ function perf() {
|
|||||||
console.log('opencv.js loaded');
|
console.log('opencv.js loaded');
|
||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
|
global.fillGradient = HelpFunc.fillGradient;
|
||||||
|
global.smoothBorder = HelpFunc.smoothBorder;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
@ -16,8 +16,13 @@ function perf() {
|
|||||||
console.log('opencv.js loaded');
|
console.log('opencv.js loaded');
|
||||||
if (isNodeJs) {
|
if (isNodeJs) {
|
||||||
global.cv = cv;
|
global.cv = cv;
|
||||||
|
global.fillGradient = HelpFunc.fillGradient;
|
||||||
|
global.smoothBorder = HelpFunc.smoothBorder;
|
||||||
global.combine = HelpFunc.combine;
|
global.combine = HelpFunc.combine;
|
||||||
global.cvtStr2cvSize = HelpFunc.cvtStr2cvSize;
|
global.log = HelpFunc.log;
|
||||||
|
global.decodeParams2Case = HelpFunc.decodeParams2Case;
|
||||||
|
global.setBenchmarkSuite = HelpFunc.setBenchmarkSuite;
|
||||||
|
global.addKernelCase = HelpFunc.addKernelCase
|
||||||
global.cvSize = Base.getCvSize();
|
global.cvSize = Base.getCvSize();
|
||||||
} else {
|
} else {
|
||||||
enableButton();
|
enableButton();
|
||||||
|
Loading…
Reference in New Issue
Block a user