树莓派型号E的读取

2024-04-27 20:43:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试Raspberry Pi上LearnOpenCV的Blob检测示例,但是仍然从imread文件中得到错误。错误为“TypeError:内置操作的参数类型错误”。你知道吗

代码如下:

import picamera.array
import picamera
import numpy as np
import cv2

with picamera.PiCamera() as camera:
    with picamera.array.PiRGBArray(camera) as stream:
        camera.resolution = (320,240)

        while True:
            camera.capture(stream, 'bgr', use_video_port=True)

            im = cv2.imread(stream.array, cv2.IMREAD_GRAYSCALE)
            detector = cv2.SimpleBlobDetector_create()
            keypoints = detector.detect(im)
            im_with_keypoints = cv2.drawKeypoints(im, keypoints, np.array([]), (0,0,255), cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)
            cv2.imshow("Keypoints", im_with_keypoints)
            if cv2.waitKey(1) & 0xFF == ord('q'):
                break

            stream.seek(0)
            stream.truncate()
        cv2.destroyAllWindows()

Tags: importtruestreamas错误withnparray
1条回答
网友
1楼 · 发布于 2024-04-27 20:43:45

Eyllanesc的回答是正确的:

必须更改im=cv2.imread(stream.array数组,cv2.IMREAD(灰度)到im=cv2.cvt颜色(stream.array数组,cv2.颜色(灰色)

相关问题 更多 >