爱雨天 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 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。