【opencv.js】两图相加、相减、与、或、非、异或 操作


JavaScript 写法类似于 C++ 写法。

相关内容详细介绍请移步官网:【https://docs.opencv.org/3.3.1/dd/d4d/tutorial_js_image_arithmetics.html

 

两图相加

let src1 = cv.imread("canvasInput1");
let src2 = cv.imread("canvasInput2");
let dst = new cv.Mat();
let mask = new cv.Mat();
let dtype = -1;
cv.add(src1, src2, dst, mask, dtype);
src1.delete(); 
src2.delete();
dst.delete();
mask.delete();

 

两图相减

let src1 = cv.imread("canvasInput1");
let src2 = cv.imread("canvasInput2");
let dst = new cv.Mat();
let mask = new cv.Mat();
let dtype = -1;
cv.subtract(src1, src2, dst, mask, dtype);
src1.delete(); src2.delete(); dst.delete(); mask.delete();

 

与、或、非、异或操作

let src1 = cv.imread("canvasInput1");
let src2 = cv.imread("canvasInput2"); let gray1=new cv.Mat(); let gray2=new cv.Mat(); cv.cvtColor(src1, gray1, cv.COLOR_RGBA2GRAY, 0); cv.threshold(gray1, gray1, 100, 255, cv.THRESH_BINARY); cv.cvtColor(src2, gray2, cv.COLOR_RGBA2GRAY, 0); cv.threshold(gray2, gray2, 100, 255, cv.THRESH_BINARY);
<!-- 取反操作 --> cv.bitwise_not(gray2, gray2); <!-- 与操作 --> let dst=new cv.Mat(); let mask=new cv.Mat(); cv.bitwise_and(gray1, gray2, dst, mask); //cv.bitwise_or(gray1, gray2, dst, mask); //cv.bitwise_not(gray1, gray2, dst, mask); //cv.bitwise_xor(gray1, gray2, dst, mask);

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM