任何人请帮助我了解如何在 JavaCV 中使用方法 convertTo。我尝试并搜索了很多时间,但没有找到正确的答案。所以我的问题是,当我尝试将垫子类型从灰色图像转换为 CV_32F 并尝试在 android 屏幕上显示它时,它不会给我任何结果。这是我的来源:
Imgproc.cvtColor(src, dst, Imgproc.COLOR_RGBA2GRAY, 1); // dst is gray image
dst.convertTo(dst_f, CvType.CV_32F, 1./255, 0); //convert dst to CV_32F with optional scale
Imgproc.cvtColor(dst_f, src, Imgproc.COLOR_GRAY2RGBA, 4); // to display it in android before convert to bitmap
我也在用这段代码在opencv C++中尝试过,它运行顺利:
imshow("dst", image);
cvtColor(image, dst, CV_BGR2GRAY);
dst.convertTo(dst_f, CV_32F, 1.0/255, 0);
imshow("dst_f", dst_f);
更新 :
当我尝试在 android 屏幕上在线显示图像时,我认为我错了。我不知道如何显示它,尽管我知道 android 需要 4 个通道才能在屏幕上显示图像。但是当我将灰色转换为 CV_32F 图像类型并尝试使用与上面相同的代码进行显示时,它运行平稳而没有任何结果。