I try to change video resolution (with mp4!) (to 800x600) in this way : but its doesn't work, when I use cap.get(3) and (4), its return every time defualt 1280x720!
import cv2
cap = cv2.VideoCapture('file')
while(cap.isOpened()):
cv2.waitKey(10)
ret, frame = cap.read()
cap.set(3, 800)
cap.set(4, 600)
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2BGRA)
print cap.get(3) # return default 1280
cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
What I'm doing wrong?
I tried -
cv2.resizeWindow("ssss", 300, 300),
and
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 600)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 800)
no effect !
import cv2
cap = cv2.VideoCapture(0)
while(cap.isOpened()):
cv2.waitKey(10)
ret, frame = cap.read()
cap.set(3, 800)
cap.set(4, 600)
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2BGRA)
print cap.get(3) # return default 1280
cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
This your code works with webcame, not with file
for a video file, you can resize the window
cv2.resizeWindow(winname, width, height)
for that first define window with name and resize it
example
cv2.namedWindow("frame", 0);
cv2.resizeWindow("frame", 800,600);