【SLAM十四讲】 第五讲

视觉slam十四讲 之 第五讲 相机与图像

这一讲主要就是 内参(针孔模型)与外参(同一点不同坐标系转换),相机畸变(切向和径向)以及图像在计算机上的表示。


点云拼接代码 pcl编译问题

我的CMakeLists(并不完整,没加eigen 略了)

cmake_minimum_required(VERSION 2.8)
set(OpenCV_DIR "/usr/local/opencv-3.1.0/share/OpenCV" )

set(PCL_DIR "/usr/share/pcl-1.7" )

project(joinmap)

find_package(OpenCV 3.1.0 REQUIRED)
find_package(PCL 1.7 REQUIRED)

include_directories( ${OpenCV_INCLUDE_DIRS} )

include_directories(${PCL_INCLUDE_DIR})

add_executable(joinmap main.cpp)

 
target_link_libraries( joinmap ${OpenCV_LIBS} )
target_link_libraries( joinmap ${PCL_LIBRARIES} )



install(TARGETS joinmap RUNTIME DESTINATION bin)

 

之前一直报错(ps:不用KDevelop,直接用高博源码可以编译,在KDevelop底下就不能编译。pcl的源码只认include下的头文件,链接不到pcl1.7文件夹下,估计是pcl安装的有问题pps:但我的确是安装slam书上写的默认安装的..。),和这个人一样的错误https://stackoverflow.com/questions/39844021/ubuntu16-04-run-pcl-in-sublime-text3-fatal-error-usr-include-pcl-1-7-pcl-poin
其实重点就是在于
 

target_include_directories( joinmap 
  PUBLIC ${PCL_INCLUDE_DIRS})


习题

习题2 如果相机分辨率变为原来的两倍而其他地方不变,内参如何变化?

假设分辨率为a \times b,传感器大小为m \times n,已知

【SLAM十四讲】 第五讲_第1张图片

由上述公式可知,a,b扩大两倍,则\pmb K变化成

\pmb K^{'}=\begin{bmatrix} 2f_{x} &0 & 2c_{x}\\ 0 & 2f_{y}& 2c_{y}\\ 0& 0&1 \end{bmatrix}

 

习题4 全局快门相机和卷帘快门相机的异同

全局快门(global shutter):是让整个CMOS每行像素全部在同一时间进行曝光,也就是所有像元同时曝光。

卷帘快门(rolling shutter):是CMOS开始曝光的时候,感光元件是从第一行、第二行、第三行... 这样按照顺序进行光线感测,一直到整片感光组件从上到下每一行都曝光完成为止,也就是不同行像元的曝光时间不同。
    

  •  全局快门(global shutter)曝光时间更短,这样不仅能提升效率,也能根除影像果冻现象的问题。
  • 卷帘快门(rolling shutter)曝光时间更长,另外就是在拍照的时候,假如左右工业相机有晃动,或者拍摄快速移动的物体,就会看到画面上下曝光时间不同而导致的果冻现象。

详见 https://wenku.baidu.com/view/2f0c8da0ce2f0066f5332283.html

 

 

你可能感兴趣的:(SLAM十四讲,CV/统计,理论&算法,SLAM领域,代码实现与解析,SLAM十四讲学习)