視覺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,b擴大兩倍,則變化成
習題4 全局快門相機和捲簾快門相機的異同
全局快門(global shutter):是讓整個CMOS每行像素全部在同一時間進行曝光,也就是所有像元同時曝光。
捲簾快門(rolling shutter):是CMOS開始曝光的時候,感光元件是從第一行、第二行、第三行... 這樣按照順序進行光線感測,一直到整片感光組件從上到下每一行都曝光完成爲止,也就是不同行像元的曝光時間不同。
- 全局快門(global shutter)曝光時間更短,這樣不僅能提升效率,也能根除影像果凍現象的問題。
- 捲簾快門(rolling shutter)曝光時間更長,另外就是在拍照的時候,假如左右工業相機有晃動,或者拍攝快速移動的物體,就會看到畫面上下曝光時間不同而導致的果凍現象。
詳見 https://wenku.baidu.com/view/2f0c8da0ce2f0066f5332283.html