鱼C论坛

 找回密码
 立即注册
查看: 1051|回复: 11

大家好我是一位高位截瘫我目前使用的程序不支持新摄像头分辨率帧数大家能帮我修改下吗

[复制链接]
发表于 2023-7-24 19:31:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
大家好我是一位高位截瘫患者因为事故导致全身瘫痪,目前使用github.com斜杠cmauri斜杠eviacam它来控制鼠标,我目前更换了一个新摄像头奥尼a5它能在1920*1080 分辨率下60fps工作,但是原来程序2.1.0没有更改分辨率选项只能工作在30fps下,我试图联系原作者,没有回复对于c++我是小白,我试图下载源代码(最新2.1.4)编译但很多错误我无法解决,哪位大佬能帮忙在源代码上更改下使其支持1920*1080 60谢谢!

评分

参与人数 1荣誉 +3 鱼币 +5 收起 理由
中英文泡椒 + 3 + 5 很抱歉听到你的情况,希望你继续加油

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-24 19:32:11 | 显示全部楼层
本帖最后由 学习编程中的Ben 于 2023-7-24 20:09 编辑

非常抱歉听到您的困境,但我无法提供代码调试和编译的帮助。我是一个基于文本的AI助手,无法直接访问、下载或修改源代码。

不过,我可以提供一些建议来解决您的问题:

1. 下载稳定版本:尝试下载先前的稳定版本(如2.1.0),并查看它是否支持更高的分辨率和帧率。有时候新版本可能存在bug,可能旧版本会更适合您的需求。

2. 寻求帮助:在项目的GitHub页面上,您可以尝试在“Issues”部分提出您遇到的问题,向其他开发者求助。您还可以在相关的开发者社区或论坛上提问,看看是否有人能够提供帮助或指导。

3. 查找替代方案:考虑寻找其他支持更高分辨率和帧率的摄像头控制软件。可能有其他开源或商业软件可以满足您的需求。

请记住,修改源代码并编译可能需要一定的编程和开发经验。如果您不熟悉C++或编译过程,可能需要寻求专业开发人员的帮助。

希望这些建议对您有所帮助。如果您有任何其他问题,请随时提问。祝您好运!求给个最佳答案,非常感谢
只要点击我的回复贴写着发表时间的那一栏的绿色按钮即可,点了奖赏2鱼币,最好请你出售附件(不过也支持评分)-->

                               
登录/注册后可看大图


此回答源于ChatGPT,若有不正确之处,请多包容
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-24 19:32:16 | 显示全部楼层
你好!对于你遇到的问题,我可以提供一些建议来尝试解决它。

首先,如果你对C++不是很熟悉,并且在编译源代码时遇到了很多错误,这可能会让你感到困惑。在这种情况下,最好的选择是寻求专业开发人员的帮助,他们可能更有能力修改源代码以支持你需要的分辨率和帧速率。

以下是几种解决方案:

1. 寻找其他软件:尝试搜索其他与摄像头控制相关的软件,看看是否有支持你新摄像头分辨率和帧速率要求的程序可用。这样你就不必自己编译源代码了。

2. 寻求开发者的帮助:除了联系原作者外,你还可以尝试在该程序的开发者社区或论坛上发帖请求帮助。请提供详细的信息,例如你使用的摄像头型号、希望的分辨率和帧速率等。其他开发者可能会提供指导或为你做出修改。

3. 自己学习和尝试修改:如果你对学习C++感兴趣,并且想亲自尝试修改源代码,可以考虑学习一些基本的C++知识和编译技术。你可以寻找一些适合初学者的C++教程,并阅读程序的文档和源代码注释来理解其结构和功能。尽管这可能是一项挑战,但这也是一个学习的机会。

总之,由于每个人的情况不同,解决问题的最佳方法可能因人而异。希望这些建议能对你有所帮助!如果你需要更多帮助或有其他问题,请随时提问。祝你好运!
如果问题已经解决,请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-24 19:32:17 | 显示全部楼层
非常抱歉听到你的困境,我会尽力帮助你。

问题:如何在源代码中更改程序以支持1920x1080分辨率和60fps?

要更改源代码以支持新的摄像头分辨率和帧率,你需要做以下几个步骤:

1. 下载最新的源代码:你已经尝试下载最新的源代码版本2.1.4,这是一个正确的步骤。

2. 解决编译错误:你提到你在编译源代码时遇到了许多错误。这可能是由于缺少所需的依赖项或编译器配置问题引起的。你可以尝试按照程序提供的编译指南或README文件中的说明进行操作,确保你的编译环境设置正确,并安装了所需的依赖项。如果你不确定如何解决特定的编译错误,请提供错误信息,我们将尽力帮助你解决。

3. 找到帧率设置的代码:一旦你成功地编译了程序,你需要找到处理摄像头帧率的相关代码。这可能涉及到视频捕捉模块或与摄像头通信的其他部分。你可以搜索关键字(如帧率、fps)来定位可能需要更改的代码段。

4. 更改分辨率和帧率参数:一旦你找到了相关代码,你可以尝试更改分辨率和帧率参数的默认值。根据你的需求,将分辨率设置为1920x1080,将帧率设置为60。通常,你需要找到对应于摄像头初始化或配置的函数,并在其中更改相应的参数。

5. 重新编译和测试:完成代码更改后,重新编译程序并进行测试,确保新的分辨率和帧率设置能够正确工作。

请注意,这些步骤可能会涉及到一些复杂的C++编程和摄像头驱动知识。如果你在解决问题时遇到困难,我建议你寻求专业开发人员或C++社区的帮助,他们可能能够提供更具体的指导或解决方案。

祝你成功修改程序以支持新摄像头!如果你还有其他问题,请随时提问。

球一个最佳答案谢谢啦!这对我非常重要!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-24 19:32:29 | 显示全部楼层
非常感谢你的提问,并且非常抱歉听到你的情况。我会尽力帮助你解决这个问题。在这个问题上,我们需要先找到原代码中决定摄像头分辨率和帧率的部分。由于我不能直接访问到GitHub代码,我将以通常的OpenCV作为摄像头输入的方式来给出一些可能的解决方案。

在OpenCV中,我们可以通过cv::VideoCapture类来控制摄像头的参数。这样的话,你需要在代码中找到使用这个类来获取摄像头输入的部分。然后,你可以使用以下的代码来设置摄像头的分辨率和帧率:
cv::VideoCapture cap(0); // 打开默认摄像头,你可能需要根据你的设备来修改这个参数

if (!cap.isOpened()) {  // 检查是否成功打开摄像头
    std::cout << "无法打开摄像头" << std::endl;
    return -1;
}

cap.set(cv::CAP_PROP_FRAME_WIDTH, 1920);    // 设置摄像头的分辨率为1920x1080
cap.set(cv::CAP_PROP_FRAME_HEIGHT, 1080);
cap.set(cv::CAP_PROP_FPS, 60);   // 设置帧率为60fps

但是你需要注意的是,这只是一种可能的解决方案。你的问题可能还需要更深入的调查。由于你说你是C++的初学者并且在编译源代码时遇到了错误,你可能需要更具体的帮助来解决编译问题。为了更好的帮助你,我们需要更具体的错误信息。

请你尝试这个解决方案,并告诉我们你的进展情况。如果你遇到任何问题,或者这个方法不能解决你的问题,都请尽快告诉我们,我们会尽力帮助你。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-24 19:37:04 | 显示全部楼层
能否提供一份更改好的编译好的成品程序
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-24 20:06:28 | 显示全部楼层
本帖最后由 isdkz 于 2023-7-24 20:09 编辑
xianyubbt 发表于 2023-7-24 19:37
能否提供一份更改好的编译好的成品程序


请问一下你是在什么系统使用?我可以尝试帮你编译

但是该项目没有详细的文档,而且项目有点久远,我对C++又不太熟悉,所以我不保证能搞定
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-24 21:38:39 | 显示全部楼层
isdkz 发表于 2023-7-24 20:06
请问一下你是在什么系统使用?我可以尝试帮你编译

但是该项目没有详细的文档,而且项目有点久远,我 ...

非常非常感谢你,我使用win10
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-24 22:12:05 | 显示全部楼层
isdkz 发表于 2023-7-24 20:06
请问一下你是在什么系统使用?我可以尝试帮你编译

但是该项目没有详细的文档,而且项目有点久远,我 ...

我试图编译2.1.0 16年的版本成功,我在(vs2013上使用opencv2.4.1.1 wxWidgets3.0.1)有一个报错代码无法访问,但成功编译,我按照github上提示修改了viacamcontroller.cpp:260 CCamera* cam = CCameraEnum::getCamera(1, camId,1920,1080,60.0);成功支持了60fps,但由于分辨率太高,识别出现问题鼠标抖动无法控制,(安说明元源程序是已低分辨率计算轨迹的)我查询了很多资料2.1.0版本使用DirectShow读取摄像头,要改变读后分辨率大概要在过滤器定义中更改,这个对我来说太难了,2.1.4最新版使用了opencv4.60版本,wxWidgets也是新版本具体还不知道,2.1.4好像没有使用DirectShow使用opencv上面的解决办法,(要更改程序的地方大概2个地方以1920*1080 60打开摄像头 再在之后缩放或者压缩分辨率在输出以达到低分辨率高fps工作,)希望上面资料能够帮助你,程序官方https:斜杠斜杠eviacam.crea-si.com/
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-24 22:33:41 | 显示全部楼层
isdkz 发表于 2023-7-24 20:06
请问一下你是在什么系统使用?我可以尝试帮你编译

但是该项目没有详细的文档,而且项目有点久远,我 ...

我试图编译过最新版2.1.4多少提示缺少很多文件,我试图在vs2013编译opencv 4.60  x86因为官网只提供了64的库lib,失败了提示几千错误失败(opencv2.4.11可以成功编译 )后来在vs2022上成功编译,后来我试图编译2.1.4但提示非常多文件缺少看github作者删除很多没用不需要的文件,我不知道怎么解决了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-24 22:49:58 | 显示全部楼层
本帖最后由 xianyubbt 于 2023-7-24 22:56 编辑
isdkz 发表于 2023-7-24 20:06
请问一下你是在什么系统使用?我可以尝试帮你编译

但是该项目没有详细的文档,而且项目有点久远,我 ...


对了摄像头是以MJPG输出才能60fps,原来程序代码没有这个格式,videoInput.cpp 中要添加了mediaSubtypes[18]        = MEDIASUBTYPE_MJPG;(这是2.1.0版本代码)还有就是上面更改后设置属性页的缩放不工作了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-24 22:58:53 | 显示全部楼层
谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 09:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表