从针孔到透镜:相机模型与去畸变技术全解析

1. 从针孔到透镜:相机成像的进化史

记得我第一次拆解老式胶片相机时,发现它的结构简单得令人惊讶——就是一个带小孔的暗箱。这种针孔相机模型至今仍是计算机视觉领域的基石,但现代相机早已不是那个简陋的暗盒。我们手机里的摄像头,其实经历了从物理小孔到复杂透镜组的跨越式发展。

为什么需要透镜?试过用针孔相机拍照的人都知道,要获得清晰图像需要极长的曝光时间。我在实验室做过对比:相同光照下,针孔相机需要30秒曝光,而加上透镜组后仅需1/100秒。透镜通过折射汇聚更多光线,但代价是引入了畸变这个"不速之客"。就像透过鱼缸看物体,直线会变成曲线,这就是我们接下来要解决的难题。

2. 针孔相机模型:三维到二维的魔法

2.1 小孔成像的数学表达

中学物理课的小孔成像实验,其实藏着计算机视觉的核心密码。当我在黑板上推导这个模型时,发现它用简单的相似三角形就解释了三维世界到二维图像的转换:

实际物体高度/像高 = 物距/像距

但这个理想模型需要三个关键假设:

  1. 孔径无限小(实际做不到)
  2. 成像平面无限大(显然不可能)
  3. 环境绝对黑暗(现实中总有杂光)

在代码中,我们用3×4的投影矩阵表示这个过程:

import numpy as np
def pinhole_project(world_points, K, R, t):
    """
    world_points: Nx3的物体坐标
    K: 3x3内参矩阵
    R: 3x3旋转矩阵
    t: 3x1平移向量
    """
    camera_coords = R @ world_points.T + t.reshape(3,1)
    image_points = K @ camera_coords
    image_points = image_points[:2] / image_points[2] # 齐
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值