在 YoloV4 演示中更改视频流分辨率
Change video stream resolution in YoloV4 demo
以下是加载 Yolov4 的实时流演示时显示的内容:
网络摄像头索引:2
[WARN:0] 全局 ../modules/videoio/src/cap_gstreamer.cpp (935) 打开 OpenCV | GStreamer 警告:无法查询视频位置:status=0,value=-1,duration=-1
视频流:2304 x 1536
对象:
然后它开始以 2 fps 的速度寻找对象。
如何将视频流分辨率更改为 1080p 或 720p?帧速率非常慢,这似乎是解决方法。
在 makefile 或 cfg 文件夹中找不到它。有什么想法吗?这是一个opencv问题吗?
谢谢!
cfg 设置:
[net]
batch=64
subdivisions=8
# Training
#width=512
#height=512
width=320
height=320
channels=3
momentum=0.949
decay=0.0005
angle=0
saturation = 1.5
exposure = 1.5
hue=.1
learning_rate=0.0013
burn_in=1000
max_batches = 500500
policy=steps
steps=400000,450000
scales=.1,.1
我尝试使用内置摄像头并连接了我的 phone(IP),两者都获得了 1080,结果很流畅。我找不到任何地方可以更改卡在 2304x1536 上的网络摄像头设置。相机设置位于何处?
我自己四处寻找这个问题的解决方案后,终于找到了!
在 darknet/src/ 文件夹中有一个名为“image_opencv.cpp”的文件。在第 597 和 598 行,您会发现以下 2 个注释命令:
//cap->set(CV_CAP_PROP_FRAME_WIDTH, 1280);
&
//cap->set(CV_CAP_PROP_FRAME_HEIGHT, 960);
尝试这些命令后出现了更多错误,这是由于 yolov4(和我的安装)使用 OpenCV 4.1.1。它有不同的语法。如果将上述两个命令替换为以下命令,您的分辨率应更改为 1920x1080:
cap->set(cv::CAP_PROP_FRAME_WIDTH, 1920);
cap->set(cv::CAP_PROP_FRAME_HEIGHT, 1080);
请注意,注释斜线已被删除以激活命令。
以下是加载 Yolov4 的实时流演示时显示的内容:
网络摄像头索引:2 [WARN:0] 全局 ../modules/videoio/src/cap_gstreamer.cpp (935) 打开 OpenCV | GStreamer 警告:无法查询视频位置:status=0,value=-1,duration=-1 视频流:2304 x 1536 对象:
然后它开始以 2 fps 的速度寻找对象。
如何将视频流分辨率更改为 1080p 或 720p?帧速率非常慢,这似乎是解决方法。
在 makefile 或 cfg 文件夹中找不到它。有什么想法吗?这是一个opencv问题吗?
谢谢!
cfg 设置:
[net]
batch=64
subdivisions=8
# Training
#width=512
#height=512
width=320
height=320
channels=3
momentum=0.949
decay=0.0005
angle=0
saturation = 1.5
exposure = 1.5
hue=.1
learning_rate=0.0013
burn_in=1000
max_batches = 500500
policy=steps
steps=400000,450000
scales=.1,.1
我尝试使用内置摄像头并连接了我的 phone(IP),两者都获得了 1080,结果很流畅。我找不到任何地方可以更改卡在 2304x1536 上的网络摄像头设置。相机设置位于何处?
我自己四处寻找这个问题的解决方案后,终于找到了!
在 darknet/src/ 文件夹中有一个名为“image_opencv.cpp”的文件。在第 597 和 598 行,您会发现以下 2 个注释命令:
//cap->set(CV_CAP_PROP_FRAME_WIDTH, 1280);
&
//cap->set(CV_CAP_PROP_FRAME_HEIGHT, 960);
尝试这些命令后出现了更多错误,这是由于 yolov4(和我的安装)使用 OpenCV 4.1.1。它有不同的语法。如果将上述两个命令替换为以下命令,您的分辨率应更改为 1920x1080:
cap->set(cv::CAP_PROP_FRAME_WIDTH, 1920);
cap->set(cv::CAP_PROP_FRAME_HEIGHT, 1080);
请注意,注释斜线已被删除以激活命令。