Ошибка типа при попытке обрезать изображения в opencvPython

Программы на Python
Ответить
Anonymous
 Ошибка типа при попытке обрезать изображения в opencv

Сообщение Anonymous »

Я пытаюсь обрезать изображения из видео, но результат не получается. Я знаю, что TypeError происходит, потому что в кадре Crop_img нет контента, но поскольку я новичок в opencv, я не знаю решения этой проблемы. Ниже приведен код, который я скопировал из проекта, который использует opencv с Raspberry Pi и веб-камерой, чтобы следовать линии. Сейчас я пытаюсь протестировать свою Windows 10, так что, возможно, возможны некоторые проблемы с интерфейсом.

код:-

# -*- coding: utf-8 -*-

import numpy as np

import cv2

video_capture = cv2.VideoCapture(-1)
video_capture.set(3, 160)
video_capture.set(4, 120)

while(True):
# Capture the frames

ret, frame = video_capture.read()
#print("image recieved");
#cv2.imshow('frame',ret)

# Crop the image

crop_img = frame[60:120, 0:160]

cv2.imshow("cropped", crop_img)

# Convert to grayscale

gray = cv2.cvtColor(crop_img, cv2.COLOR_BGR2GRAY)

# Gaussian blur

blur = cv2.GaussianBlur(gray,(5,5),0)

cv2.imshow('show', blur)

# Color thresholding

ret,thresh = cv2.threshold(blur,60,255,cv2.THRESH_BINARY_INV)

# Find the contours of the frame

contours,hierarchy = cv2.findContours(thresh.copy(), 1, cv2.CHAIN_APPROX_NONE)

# Find the biggest contour (if detected)

if len(contours) > 0:

c = max(contours, key=cv2.contourArea)
M = cv2.moments(c)
cx = int(M['m10']/M['m00'])
cy = int(M['m01']/M['m00'])
cv2.line(crop_img,(cx,0),(cx,720),(255,0,0),1)
cv2.line(crop_img,(0,cy),(1280,cy),(255,0,0),1)
cv2.drawContours(crop_img, contours, -1, (0,255,0), 1)

if cx >= 120:
print ("Turn Left!")

if cx < 120 and cx > 50:
print ("On Track!")

if cx

Подробнее здесь: https://stackoverflow.com/questions/589 ... -on-opencv
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»