我正在使用android native示例 Activity 。当我使用cvtcolor函数时,我的输出是缩小的输入的四个副本,并且没有颜色。没有cvtcolor函数,输入是完美的,当然,它具有颜色。

更具体地说,输出为四列。输出为灰色。如果要拍摄脸部,脸部将向下拉伸(stretch),看起来超长。

       cvtcolor(input, output, CV_BGR2GRAY);

鉴于我有限的图像处理知识,我不知道从哪里开始或下一步要做什么。我在Moto X上

最佳答案

Android图像为4通道。因此,您需要类似

cv::Mat gray;
cv::cvtColor(input, gray , CV_BGRA2GRAY);  // convert 4 channel color to 1 channel gray
cv::cvtColor(gray , output, CV_GRAY2BGRA); // convert 1 channel gray to 4 channel gray

关于java - OpenCV中的cvtColor创建拉伸(stretch)图像数组?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25297729/

10-11 06:27