ÀÖÓãµç¾º

½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

Open CVÊÓÆµ¶Áд½Ì³Ì¡¾Open CVÊÓÆµÏÂÔØ¡¿

¸üÐÂʱ¼ä:2021Äê07ÔÂ27ÈÕ16ʱ49·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

Ò»¡¢´ÓÎļþÖжÁÈ¡ÊÓÆµ²¢²¥·Å

ÔÚOpenCVÖÐÎÒÃÇÒª»ñȡһ¸öÊÓÆµ£¬ÐèÒª´´½¨Ò»¸öVideoCapture¶ÔÏó£¬Ö¸¶¨ÄãÒª¶ÁÈ¡µÄÊÓÆµÎļþ£º



1. ´´½¨¶ÁÈ¡ÊÓÆµµÄ¶ÔÏó

cap = cv.VideoCapture(filepath)

²ÎÊý£º

filepath: ÊÓÆµÎļþ·¾¶



2.ÊÓÆµµÄÊôÐÔÐÅÏ¢

2.1. »ñÈ¡ÊÓÆµµÄijЩÊôÐÔ

retval = cap.get(propId)

²ÎÊý£º

propId: ´Ó0µ½18µÄÊý×Ö£¬Ã¿¸öÊý×Ö±íʾÊÓÆµµÄÊôÐÔ

³£ÓÃÊôÐÔÓУº

open cv¶ÁдÊÓÆµ



2.2. ÐÞ¸ÄÊÓÆµµÄÊôÐÔÐÅÏ¢

cap.set(propId£¬value)

²ÎÊý£º

·proid: ÊôÐÔµÄË÷Òý£¬ÓëÉÏÃæµÄ±í¸ñÏà¶ÔÓ¦

·value: Ð޸ĺóµÄÊôÐÔÖµ


3.ÅжÏͼÏñÊÇ·ñ¶ÁÈ¡³É¹¦

isornot = cap.isOpened()

·Èô¶ÁÈ¡³É¹¦Ôò·µ»Øtrue£¬·ñÔò·µ»ØFalse


4.»ñÈ¡ÊÓÆµµÄһ֡ͼÏñ

ret, frame = cap.read()

²ÎÊý£º

·ret: Èô»ñÈ¡³É¹¦·µ»ØTrue£¬»ñȡʧ°Ü£¬·µ»ØFalse

·Frame: »ñÈ¡µ½µÄijһ֡µÄͼÏñ


5.µ÷ÓÃcv.imshow()ÏÔʾͼÏñ£¬ÔÚÏÔʾͼÏñʱʹÓÃcv.waitkey()ÉèÖÃÊʵ±µÄ³ÖÐøÊ±¼ä£¬Èç¹ûÌ«µÍÊÓÆµ»á²¥·ÅµÄ·Ç³£¿ì£¬Èç¹ûÌ«¸ß¾Í»á²¥·ÅµÄ·Ç³£Âý£¬Í¨³£Çé¿öÏÂÎÒÃÇÉèÖÃ25ms¾Í¿ÉÒÔÁË¡£


6.×îºó£¬µ÷ÓÃcap.realease()½«ÊÓÆµÊͷŵô

ʾÀý£º

import numpy as np
import cv2 as cv
# 1.»ñÈ¡ÊÓÆµ¶ÔÏó
cap = cv.VideoCapture('DOG.wmv')
# 2.ÅжÏÊÇ·ñ¶ÁÈ¡³É¹¦
while(cap.isOpened()):
    # 3.»ñȡÿһ֡ͼÏñ
    ret, frame = cap.read()
    # 4. »ñÈ¡³É¹¦ÏÔʾͼÏñ
    if ret == True:
        cv.imshow('frame',frame)
    # 5.ÿһ֡¼ä¸ôΪ25ms
    if cv.waitKey(25) & 0xFF == ord('q'):
        break
# 6.ÊÍ·ÅÊÓÆµ¶ÔÏó
cap.release()
cv.destoryAllwindows()

¶þ¡¢±£´æÊÓÆµ

ÔÚOpenCVÖÐÎÒÃDZ£´æÊÓÆµÊ¹ÓõÄÊÇVedioWriter¶ÔÏó£¬ÔÚÆäÖÐÖ¸¶¨Êä³öÎļþµÄÃû³Æ£¬ÈçÏÂËùʾ£º

´´½¨ÊÓÆµÐ´ÈëµÄ¶ÔÏó

out = cv2.VideoWriter(filename,fourcc, fps, frameSize)

²ÎÊý£º

·filename£ºÊÓÆµ±£´æµÄλÖÃ

·fourcc£ºÖ¸¶¨ÊÓÆµ±à½âÂëÆ÷µÄ4×Ö½Ú´úÂë

·fps£ºÖ¡ÂÊ

·frameSize£ºÖ¡´óС

ÉèÖÃÊÓÆµµÄ±à½âÂëÆ÷£¬ÈçÏÂËùʾ£¬

retval = cv2.VideoWriter_fourcc( c1, c2, c3, c4 )

²ÎÊý£º

·c1,c2,c3,c4: ÊÇÊÓÆµ±à½âÂëÆ÷µÄ4×Ö½Ú´úÂ룬ÔÚfourcc.orgÖÐÕÒµ½¿ÉÓôúÂëÁбí£¬ÓëÆ½Ì¨½ôÃÜÏà¹Ø£¬³£ÓõÄÓУº

ÔÚWindowsÖУºDIVX(.avi)

ÔÚOSÖУºMJPG(.mp4)£¬DIVX(.avi)£¬X264(.mkv)¡£

·ÀûÓÃcap.read()»ñÈ¡ÊÓÆµÖеÄÿһ֡ͼÏñ£¬²¢Ê¹ÓÃout.write()½«Ä³Ò»Ö¡Í¼ÏñдÈëÊÓÆµÖС£

·Ê¹ÓÃcap.release()ºÍout.release()ÊÍ·Å×ÊÔ´¡£

ʾÀý£º

import cv2 as cv
import numpy as np
# 1. ¶ÁÈ¡ÊÓÆµ
cap = cv.VideoCapture("DOG.wmv")
# 2. »ñȡͼÏñµÄÊôÐÔ(¿íºÍ¸ß£¬),²¢½«Æäת»»ÎªÕûÊý
frame_width = int(cap.get(3))
frame_height = int(cap.get(4))
# 3. ´´½¨±£´æÊÓÆµµÄ¶ÔÏó£¬ÉèÖñàÂë¸ñʽ£¬Ö¡ÂÊ£¬Í¼ÏñµÄ¿í¸ßµÈ
out = cv.VideoWriter('outpy.avi',cv.VideoWriter_fourcc('M','J','P','G'), 10, (frame_width,frame_height))
while(True):
# 4.»ñÈ¡ÊÓÆµÖеÄÿһ֡ͼÏñ
ret, frame = cap.read()
if ret == True:
# 5.½«Ã¿Ò»Ö¡Í¼ÏñдÈëµ½Êä³öÎļþÖÐ
out.write(frame)
else:
break
# 6.ÊÍ·Å×ÊÔ´
cap.release()
out.release()
cv.destroyAllWindows()


¡¶Í¼Ïñ´¦ÀíOpenCVÈëÃŽ̡̳·¿Î³Ìµ¼¶Á


¼ÓQQ£º435946716£¬»ñÈ¡¡¶Í¼Ïñ´¦ÀíOpenCVÈëÃŽ̡̳·È«Ì×ÊÓÆµ½Ì³Ì+±Ê¼Ç+Ô´Âë¡£



²ÂÄãϲ»¶£º

OpenCVͼƬÏà¼ÓºÍ»ìºÏµÄ·½·¨

ʲôÊÇOpenCV£¿OpenCV°²×°½Ì³Ì

Harris½Çµã¼ì²âÔ­Àí

ÓïÑÔÄ£ÐÍ-BERT£ºbertËã·¨½éÉÜ

ÀÖÓãµç¾ºÈ˹¤ÖÇÄÜ¿ª·¢¿Î³Ì

0 ·ÖÏíµ½£º
ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿