1

我目前有一张我用过的二进制黑白图像,cvThreshold我想在图像的白色部分恢复颜色。

据我了解,将原始图像与二进制图像相乘会产生这种效果。但是,我不确定如何做到这一点。我正在使用 JavaCV。我试图:

IplImage img.mul(im2); 

这并没有真正奏效。如何在mulJavaCV 中使用 openCV 函数?此外,如果有人有关于将 opencv 代码转换为 JavaCV 的提示,我将不胜感激,JavaCV 项目页面上的内容几乎不足以让我维持生计。

4

1 回答 1

0

我有我自己的(可能很奇怪:)..)方法来查找在 JavaCV 中工作的函数,但在许多情况下它是有效的。有一个名为 emguCV 的 C# 的 OpenCV 包装器,它在 JavaCV 中具有与此非常相似的功能。因此,如果我想找到乘法或加法函数,我在 google:cvMul emgu或类似的东西中编写,这是我搜索的结果:

维基 emgu 链接 1

维基 emgu 链接 2

因此,如果您想将 2 IplImages 相乘,您可以执行以下操作:

 IplImage Red=IplImage.create(zdj1.cvSize(),8,1); 
 IplImage Green=IplImage.create(zdj1.cvSize(),8,1);
 IplImage Result=IplImage.create(zdj1.cvSize(),8,1);
          cvMul(Red,Green,Result,1);    
于 2013-09-09T08:51:20.103 回答