果果音乐 2022-09-23 16:04 采纳率: 33.3%
浏览 41
已结题

opencv框选目标点(检测发光点)(获取坐标)

问题遇到的现象和发生背景

使用边缘检测框选出了一些东西,希望能够框选它们并获取坐标

用代码块功能插入代码,请勿粘贴截图

import cv2
import time

def null(id):
    pass

cap=cv2.VideoCapture(0)
cv2.namedWindow("1")
cv2.createTrackbar("edge","1",0,255,null)
cv2.createTrackbar("edge1","1",0,255,null)
frame=cv2.GaussianBlur(cv2.imread("d:/1.jpeg"),(3,3),sigmaX=1,sigmaY=1)
while(1):
    edges=cv2.Canny(image=frame,threshold1=cv2.getTrackbarPos("edge","1"),threshold2=cv2.getTrackbarPos("edge1","1"))

    cv2.imshow("1",edges)
    cv2.waitKey(50)
运行结果及报错内容

希望能够达到(获取他们的坐标):

img

我的解答思路和尝试过的方法

百度

我想要达到的结果

img

  • 写回答

2条回答 默认 最新

  • 爱晚乏客游 2022-09-23 17:52
    关注

    先dilate做一次膨胀操作,然后用findContours找轮廓,不过你这里面有些里的远的可能就不行了,会被认为是两个轮廓,并不能像你想的那样变成一个。

    img

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月3日
  • 已采纳回答 10月3日
  • 创建了问题 9月23日