我在使用OpenCV4Android API的Eclipse中编写Android应用程序。如何轻松显示Mat
图像,仅用于调试?在C++中,根据OpenCV的教程,你会做这样的事情:显示图像并转换为灰度 - Android的OpenCV,Java API
namedWindow("Display window", CV_WINDOW_AUTOSIZE);// Create a window for display.
imshow("Display window", image); // Show our image inside it.
但针对Android Java API的似乎不具有内org.opencv.highgui.Highgui
一个namedWindow
功能。
此外,我想加载图像为灰度。在C++中,根据imread not working in Opencv,你会怎么做:
imread("blackandwhite.jpg", 0);
但Java API的Highgui.imread()
只有文件名参数。
我没有使用JavaCV,它是OpenCV的第三方包装器。相反,我使用OpenCV for Android,它的语法不同于C++/JavaCV。感谢关于cvCvtColor的提示 - 这使我转向了灰度转换的解决方案,它是'Imgproc.cvtColor(mat,mat,Imgproc.COLOR_RGB2GRAY)'。不过,我不知道你在'View'上展示图片的意思。你能详细说明一下吗? – 2012-08-13 20:24:32
@ user1397061 javacv提供了在设备上显示图像的示例。正如我已经说过的,在WEB中有很多例子。 – ArtemStorozhuk 2012-08-13 20:26:17
'Highgui.imwrite(“/ image.jpg”,mat)'不会实际显示图像 - 它只是将其保存到文件中。 JavaCV使用画布框架,这似乎并不存在于其他任何地方。你介意发布一个链接到OpenCV4Android的例子吗? – 2012-08-13 20:34:49