基于OpenCV提升弱光图像拍摄效果的技术方案咨询
利用OpenCV提升弱光下鲑鱼洄游视频拍摄效果的咨询
我们使用结合OpenCV的Python脚本记录鲑鱼洄游视频,以此估算鱼道总通行量,相关脚本如下:
import cv2 import numpy as np import time import datetime import pathlib import imutils import os import shutil import socket szPlacename = 'Yukon River' iCaptureDuration = 600 iFramesPerSec = 3 szFramesPerSec = str(iFramesPerSec) cap = cv2.VideoCapture(0) iSleepDuration = 0 iFrameWidth = 1024 iFrameHeight = 768 szFrameWidth = str(iFrameWidth) szFrameHeight = str(iFrameHeight) szComputerName = socket.gethostname() iTotal, iUsed, iFree = shutil.disk_usage("/") iPercent = 100 * iUsed / iTotal iPercent = round(iPercent, 1) szPercent = str(iPercent)+"%" font = cv2.FONT_HERSHEY_COMPLEX_SMALL if (cap.isOpened() == False): print("Unable to read camera feed") pathlib.Path(('C:\\LZ\\')+szPlacename+"-"+(datetime.datetime.now().strftime("%Y%m%d"))).mkdir(parents=True, exist_ok=True) out = cv2.VideoWriter('C:\\LZ\\'+szPlacename+"-"+datetime.datetime.now().strftime("%Y%m%d")+'/'+datetime.datetime.now().strftime("%Y%m%d%H%M%S") + " "+ szPlacename + '_StarLink.avi',cv2.VideoWriter_fourcc('m','j','p','g'),iFramesPerSec, (iFrameWidth,iFrameHeight)) iPrev = 0 iStartTime = time.time() while( int(time.time() - iStartTime) < iCaptureDuration ): #start fps iTimeElapsed = time.time() - iPrev while(iTimeElapsed > 1./iFramesPerSec): ret, frame = cap.read() if not ret: break if iTimeElapsed > 1./iFramesPerSec: iPrev = time.time() szDateTime = str(datetime.datetime.now()) szDateTime = szDateTime[0:22] if ret==True: frame = imutils.resize(frame, width=iFrameWidth) frame = cv2.putText(frame,"Laptop: "+szComputerName+", HD used= "+szPercent+", FPS= "+szFramesPerSec+", Size(px)= "+szFrameWidth+"x"+szFrameHeight,(10,90),font, 1,(0,255,255),2,cv2.LINE_8) frame = cv2.putText(frame,"Location: "+szPlacename +", Time: "+ szDateTime,(10,120),font, 1,(0, 255, 255),2,cv2.LINE_8) out.write(frame) cv2.imshow('frame',frame) if cv2.waitKey(1) & 0xFF == ord('q'): break else: break cap.release() out.release() cv2.destroyAllWindows()
鲑鱼洄游昼夜均会发生,我们已安装水下灯辅助夜间计数,目前已拍摄到黄昏及夜间时段的视频。
当前使用的是从AliExpress采购的USB ELP 1080P弱光(0.01lux)30fps H.264 IMX323工业机器视觉相机,现咨询:OpenCV还有哪些可利用的特性能够提升弱光图像的拍摄效果?
内容的提问来源于stack exchange,提问作者portsample
相关产品推荐
相关产品推荐

