我是python和OPENCV的新手,我需要编写一个读取的python代码一个图像。我使用了一些我在网上找到的例子,我得到了一些奇怪的结果。
我正在运行 ubuntu12.04 和 opencv2.4.9
首先,当我运行文件时,我的鼠标转动以交叉等待我的输入(4 次点击)。
其次,我得到了语法按摩,我找不到代码中的问题。
最后一个,当我查看py文件的文件夹时,我看到2个新文件:"
cv2" - 我第一次点击的屏幕截图和" np" - 其他3个屏幕截图(其他3次点击)
这是代码:
!/usr/bin/python
import cv2
import numpy as np
读取图像
img = cv2.imread('clutter.jpg')
Yellow_MIN = np.array([20, 50, 45],np.uint8)
Yellow_MAX = np.array([30, 255, 255],np.uint8)
hsv_img = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
frame_threshed = cv2.inRange(hsv_img, Yellow_MIN, Yellow_MAX)
cv2.imwrite('output2.jpg', frame_threshed)
--代码结束--
语法错误是:
./color_find_et.py: line 9: syntax error near unexpected token `('
./color_find_et.py: line 9: `img = cv2.imread('clutter.jpg')'
您需要添加指定加载图像颜色类型的标志
使用函数 cv2.imread() 读取图像。图像应位于工作目录中,或者应提供图像的完整路径。
第二个参数是一个标志,它指定图像应该的方式 读。
cv2.IMREAD_COLOR : Loads a color image. Any transparency of image will be neglected. It is the default flag. cv2.IMREAD_GRAYSCALE : Loads image in grayscale mode cv2.IMREAD_UNCHANGED : Loads image as such including alpha channel
注意
代替这三个标志,您可以简单地传递整数 1、0 或 -1 分别。
具体而言,您的代码需要:
img = cv2.imread('clutter.jpg', 0)
而不是写"import cv2"你必须写
"从 CV2 导入 * "