《K230 从熟悉到...》线段检测

《K230 从熟悉到...》线段检测

在这里插入图片描述
线段检测是计算机视觉中的一个基本任务,它用于识别和定位图像中的线性特征。
常用于识别图像中的线段部分,为更高层次的视觉处理任务提供支持。常使用霍夫变换算法来实现。

庐山派所使用的 find_line_segments 接口即采用了 LSD 算法,与部分OpenCV版本一致,检测效果准确并且线段不易抖动或跳跃。

LSD是一种快速且精准的线段检测算法,它不需要任何参数调整,能够在各种尺度上有效检测线段。

《庐山派 K230 从熟悉到...》线段检测


我们只看实际效果
find_line_segments

image.find_line_segments([roi[, merge_distance=0[, max_theta_difference=15]]])

在这里插入图片描述

import time, os, sys

from media.sensor import *
from media.display import *
from media.media import *

sensor = None
fps = time.clock()
try:


    sensor = Sensor()
    sensor.reset()

    sensor.set_framesize(width = 800, height = 480)
    sensor.set_pixformat(Sensor.YUV420SP)
    bind_info = sensor.bind_info()
    Display.bind_layer(**bind_info, layer = Display.LAYER_VIDEO1)

    # 通道2  320*240
    sensor.set_framesize(Sensor.QVGA, chn = CAM_CHN_ID_2)
    sensor.set_pixformat(Sensor.RGB565, chn = CAM_CHN_ID_2)

    
    Display.init(Display.ST7701)
    MediaManager.init()
    sensor.run()
    fps = time.clock()
    # 注意他们2个显示都不在一个层上面!!!
    while True:
        fps.tick()
       
        os.exitpoint()
      
        img = sensor.snapshot(chn = CAM_CHN_ID_2)
        lines = img.find_line_segments(merge_distance=20, max_theta_diff=10)
        count = 0  # 初始化线段计数器
        
        print("------线段统计开始------")
        for line in lines:
            img.draw_line(line.line(), color=(1, 147, 230), thickness=3)  # 绘制线段
            print(f"Line {count}: {line}")  # 打印线段信息
            count += 1  # 更新计数器    
            print("---------END---------")
        Display.show_image(img, x = 800-320, layer = Display.LAYER_OSD1)
        print(fps.fps())
        
        
except KeyboardInterrupt as e:
    print("user stop: ", e)
except BaseException as e:
    print(f"Exception {e}")
finally:
    # sensor stop run
    if isinstance(sensor, Sensor):
        sensor.stop()
    # deinit display
    Display.deinit()
    os.exitpoint(os.EXITPOINT_ENABLE_SLEEP)
    time.sleep_ms(100)
    # release media buffer
    MediaManager.deinit()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咸鱼桨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值