-2
私のPythonコードで何が問題なのですか? 5行目の "Mat frame"、13行目の "std"に構文エラーがあります。このコードはもともとC++のものでしたが、Pythonに変換しました。動き検出+輪郭(Python)
import numpy as np
import cv2
def run_main():
cv2.Mat frame
cv2.Mat back
cv2.Mat fore
cv2.VideoCapture cap(0)
cv2.BackgroundSubtractorMOG2 bg
bg.nmixtures = 3
bg.bShadowDetection = false
std::vector<std::vector<cv::Point> > contours;
cv2.namedWindow("Frame")
cv2.namedWindow("Background")
while True:
cap >> frame;
bg.operator()(frame,fore)
bg.getBackgroundImage(back)
cv2.erode(fore,fore,cv2.Mat())
cv2.dilate(fore,fore,cv2.Mat())
cv2.findContours(fore,contours,CV_RETR_EXTERNAL,CV_CHAIN_APPROX_NONE)
cv2.drawContours(frame,contours,-1,cv2.Scalar(0,0,255),2)
cv2.imshow("Frame",frame)
cv2.imshow("Background",back)
if cv2.waitKey(1) & 0xFF == ord('q')
break
cap.release()
cv2.destroyAllWindows()
if __name__ == "__main__":
run_main()