【发布时间】:2014-06-08 23:46:00
【问题描述】:
我正在尝试使用 C# 将一个小的 opencv python 脚本转换为 emgu。
python代码
COLOR_MIN = np.array([104, 34, 255], np.uint8)
COLOR_MAX = np.array([124, 34, 255], np.uint8)
frame_threshed = cv2.inRange(hsv_img, COLOR_MIN, COLOR_MAX)
cv2.imshow("frame thresh", frame_threshed)
正确地对 cv2.imshow 显示的图像进行阈值处理。
我已将代码转换为 C#,如下所示:
var min = new Hsv(104, 34, 255);
var max = new Hsv(124, 34, 255);
var thresh = hsvImg.InRange(min, max);
CvInvoke.cvShowImage("thresh", thresh);
这里只绘制了一个黑色图像 - 所以似乎没有任何东西与阈值匹配。
在这两种情况下,我都使用相同的 .PNG 文件作为输入。我在 osx 上编写了 python 代码,.net 代码在 win8 虚拟机中运行 - 这可能与颜色配置文件有关吗?
任何尝试使 .NET 版本正常工作的提示或事情将不胜感激!谢谢!
【问题讨论】: