0

我正在尝试在我的应用程序中结合皮肤检测和 viola jones 对象检测,以准确检测手部。我正在使用 JAVACV

这就是我想要做的

    SkinImage = detect.skin(InputImage);

这将返回一个图像,其中皮肤区域标记为白色,所有其他区域标记为黑色,二进制图像

在此之后,我想将“SkinImage”和“InputImage”与“SkinImage”和“InputImage”相结合,我应该从中得到一个只有皮肤区域可见的皮肤颜色和所有其他区域变黑的图像,就像对图像应用二进制蒙版一样。所以问题是我如何和这两个图像?

我知道它可以用 SkinImage &=InputImage; 在 C++ 中完成。

我如何使用 JAVACV 或 ImageJ 等其他库在 JAVA 中执行此操作

4

1 回答 1

0

在 ImageJ 中,您可以执行以下操作以将蒙版应用于 RGB 图像:

import ij.ImagePlus;
import ij.plugin.ImageCalculator;

[...]

ImageCalculator ic = new ImageCalculator();
ImagePlus imp3 = ic.run("AND create", imp1, imp2);

和是类的实例imp1原始图像(例如RGB)和二进制掩码图像。imp2ImagePlusimp1imp2

要获取此代码,我在Java模式下运行宏记录器插件 > 宏 > 记录...)时正在运行Process > Image Calculator ...。

于 2013-09-15T19:30:15.303 回答