爱雨天 2021-11-23 23:33 采纳率: 87.5%
浏览 59
已结题

怎样用opencv编程完成能量条识别框选和输出中心点的任务

用opencv读入一个视频,要完成两个任务,**一个是框选能量条和识别能量条颜色切换,另一个是输出4个能量条的中心点
**
任务截图:

img

实现截图:

img

因为原视频我不知道怎样上传到提问中去,所以我只能自己在一个网站上录制视频并发表了qwq

这个是任务的视频
https://www.bilibili.com/video/BV1nS4y1R7kR?spm_id_from=333.999.0.0

即当把以上视频左下角红色的4个能量条识别的时候,把他们框起来,并输出中心点;当要识别以上视频右下角的四个能量条的时候,把他们框起来,并输出中心点
最终演示效果如下视频:
https://www.bilibili.com/video/BV1vg411N78d?spm_id_from=333.999.0.0

求opencv编程的实现代码,专家请将编程实现代码写下来,并在程序里做一些注释吧,毕竟我啥也不会,实现效果视频我也想看看qwq

  • 写回答

3条回答 默认 最新

  • 爱晚乏客游 2021-11-24 09:33
    关注

    给你说个思路自己实现
    首先要先通道分离,R^G可以将黄色这部分去掉,剩下的与红色通道进行&操作可以获得红色的部分,(这里只要黄色部分的R和G值一样就行,不一样的话就得用面积来去除黄色部分),用findCountours找红色部分轮廓,将找到的轮廓全部合并,用minAreaRect(contours),这个返回结果是一个RotateRect,就可以得到绿色框和中心点,蓝色部分就直接对蓝色通道操作就行,不需要去除黄色部分。
    上面的实现了,下面的就是一个回调函数切换找颜色的部分,你可以将上面写成两个函数,根据值不一样调用不同的函数就是了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月3日
  • 已采纳回答 11月25日
  • 创建了问题 11月23日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵