log_polar_off_center.py

# 本作品采用MIT许可证授权。
# 版权所有 (c) 2013-2026 OpenMV LLC。保留所有权利。
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# 对数极坐标映射偏心示例
#
# 本示例展示了通过对数极坐标变换对图像进行
# 变换,中心为用户指定的点而非
# 图像中心。当镜头光轴与传感器中心不对齐时
# (例如通过偏移转接件安装的鱼眼镜头),这很有用,
# 这样极坐标变换就可以重新以真正的光学中心
# 为中心。
#
# 传入`x`和`y`关键字参数以设置极坐标中心。两者
# 省略时默认为图像中心。

import csi
import time

csi0 = csi.CSI()
csi0.reset()  # 初始化相机传感器。
csi0.pixformat(csi.RGB565)  # 或csi.GRAYSCALE
csi0.framesize(csi.QQVGA)  # 或csi.QVGA(或其他)
csi0.snapshot(time=2000)  # 让新设置生效。

# 将极坐标变换中心设为传感器中心向右20像素、向下10像素处。
# 请根据您的镜头调整这些值。
CENTER_X_OFFSET = 20
CENTER_Y_OFFSET = 10

clock = time.clock()  # 跟踪FPS。

while True:
    clock.tick()  # 跟踪snapshots()之间经过的毫秒数。
    img = csi0.snapshot()
    cx = (img.width() // 2) + CENTER_X_OFFSET
    cy = (img.height() // 2) + CENTER_Y_OFFSET
    img.logpolar(reverse=False, x=cx, y=cy)

    print(clock.fps())  # 注意:您的 OpenMV Cam 在连接到
    # 计算机时运行速度会减半。断开连接后,FPS 应该会增加。

results matching ""

    No results matching ""