grayscale_bilateral_filter.py
# 本作品采用MIT许可证授权。
# 版权所有 (c) 2013-2023 OpenMV LLC。保留所有权利。
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# 灰度双边滤波示例
#
# 此示例展示了如何在灰度图像上应用双边滤波。
import csi
import time
csi0 = csi.CSI()
csi0.reset() # 初始化相机传感器。
csi0.pixformat(csi.GRAYSCALE) # 或csi.RGB565
csi0.framesize(csi.QQVGA) # 或csi.QVGA(或其他)
csi0.snapshot(time=2000) # 让新设置生效。
clock = time.clock() # 跟踪FPS。
while True:
clock.tick() # 跟踪snapshots()之间经过的毫秒数。
img = csi0.snapshot() # 拍照并返回图像。
# color_sigma 控制像素在颜色上必须有多接近才能
# 一起模糊。较小的值意味着它们必须更接近。
# 较大的值则不那么严格。
# space_sigma 控制像素在空间上必须有多接近才能
# 一起模糊。较小的值意味着它们必须更接近。
# 较大的值则不那么严格。
# 在图像的每个像素上运行内核。
img.bilateral(3, color_sigma=0.1, space_sigma=1)
# 请注意,如果您将 color_sigma/space_sigma 设置得过于激进,
# 双边滤波器可能会引入图像缺陷。增加 sigma 值直到
# 如果你看到了缺陷,它们就会消失。
print(clock.fps()) # 注意:您的 OpenMV Cam 在连接到
# 计算机时运行速度会减半。断开连接后,FPS 应该会增加。