例程讲解-04-midpoint_adaptive_threshold_filter中点自适应阈值滤波
# 中点值自适应阈值滤波示例。
# 此示例显示了使用自适应阈值处理的中点滤波。 当midpoint(threshold=True) 时,
# midpoint()方法通过比较像素周围的像素的中值减去偏移量来自适应阈值图像。
import sensor, image, time
sensor.reset() # Initialize the camera sensor.
sensor.set_pixformat(sensor.RGB565) # or sensor.GRAYSCALE
sensor.set_framesize(sensor.QQVGA) # or sensor.QVGA (or others)
sensor.skip_frames(time = 2000) # Let new settings take affect.
clock = time.clock() # Tracks FPS.
while(True):
clock.tick() # Track elapsed milliseconds between snapshots().
img = sensor.snapshot() # Take a picture and return the image.
# 第一个参数是内核大小。N对应于((N * 2)+1)^ 2内核大小。
# 例如。 1 == 3x3内核,2 == 5x5内核等。
# 注意:您不应该使用大于2的值。
# “bias”参数允许您在最小和最大混合之间进行选择。 0.5 ==中点过滤器,0.0 ==最小过滤器,
# 1.0 ==最大过滤器。请注意,最小滤波器会使图像变暗,而最大滤波器会使图像变亮。
img.midpoint(1, bias=0.5, threshold=True, offset=5, invert=True)
print(clock.fps()) # Note: Your OpenMV Cam runs about half as fast while
# connected to your computer. The FPS should increase once disconnected.
原图:
运行效果图: