2017-07-12 8 views
1

検出された車に矩形を描画したいのですが、コードを実行しても表示されません。そして画面は遅れている。ビデオでの検出ではなく、画像上での車両検出

import cv2 
cascade_src = 'cars.xml' 
img = cv2.imread('1.png') 

##print(img) 

car_cascade = cv2.CascadeClassifier(cascade_src) 
cars = car_cascade.detectMultiScale(img, 1.1, 1) 
##print cars 
for (x,y,w,h) in cars: 
    cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2) 
    cv2.imshow('image', img) 
+0

'img'は単なる画像で適用されます - 'インポートイメージ。 img = Image.open( "a-picture-of-a-car.jpg") 'は、例えば' cap.read() 'を置き換えます。 –

+1

[Pythonを使用してイメージファイルを読むにはどうすればいいですか?](https://stackoverflow.com/questions/3735553/how-do-i-read-an-image-file-using-python) –

+0

このようなスプーン摂食のコミュニティがなかったらあなたはどんな人たちがやるだろうか... – Piglet

答えて

1

は、画像を読み取って、同じ機能

import cv2 
cascade_src = 'cars.xml' 
img = cv2.imread('car.jpg',0) 
car_cascade = cv2.CascadeClassifier(cascade_src) 
cars = car_cascade.detectMultiScale(img, 1.1, 1) 
for (x,y,w,h) in cars: 
    cv2.rectangle(img,(x,y),(x+w,y+h),(0,0,255),2)  

cv2.imshow('video', img) 
cv2.waitKey(0) 
+0

ありがとう私はsmiliarの1つを試みたが、私はイメージを見ない。画面が遅れています。画像は表示されません。何か間違っていますが、どこにあるのかわかりません:( –

+0

imreadを使って画像を読むと、 'print(img)'を使って画像が正しく読み取られているかどうかを確認してください。ポイントが検出されていないかどうかを確認します。なし –

+0

イメージを印刷すると、マトリックスの座標が表示されます。また、xyが正しく表示されます。ただし、矩形のイメージを表示する場合は、何も画面に表示されず、遅れます。S –

関連する問題