ルーチン解説-09-edges 高速エッジ検出
このルーチンは 09-feature-Detection-edges.py です。\ このルーチンの目的は、canny オペレーターを使用して高速なエッジ検出を実現することです。canny オペレーターを使用したエッジ検出は最も単純かつ高速なエッジ検出ですが、その検出効果はモーフ変換のエッジ検出効果ほど優れていません。
# Canny边缘检测:
#
# 这个例子展示了Canny边缘检测。
import sensor, image, time
sensor.reset() # 初始化sensor.
sensor.set_pixformat(sensor.GRAYSCALE) # or sensor.RGB565
#设置图像色彩格式,有RGB565色彩图和GRAYSCALE灰度图两种
sensor.set_framesize(sensor.QQVGA) # or sensor.QVGA (or others)
#设置图像像素大小
sensor.skip_frames(30) # 让新的设置生效
sensor.set_gainceiling(8)
clock = time.clock() # 跟踪FPS帧率
while(True):
clock.tick() # 追踪两个snapshots()之间经过的毫秒数.
img = sensor.snapshot() # 拍一张照片并返回图像。
# 使用Canny边缘检测器
img.find_edges(image.EDGE_CANNY, threshold=(50, 80))
#threshold设置阈值
# 更快更简单的边缘检测
#img.find_edges(image.EDGE_SIMPLE, threshold=(100, 255))
print(clock.fps()) # 注意:你的OpenMV摄像头的运行速度只有它的一半
原画:
\ canny 演算子を使用したエッジ検出:
\ 04-image-Filters-edge_detection.py モーフ変換エッジ検出を使用します。