cv2.getOptimalNewCameraMatrix中的alpha和roi参数

cv2.getOptimalNewCameraMatrix中的alpha和roi参数


参考:

https://answers.opencv.org/question/101398/what-does-the-getoptimalnewcameramatrix-function-does/
https://www.cnblogs.com/riddick/p/6711263.html

官方文档

看了官方文档还是一头雾水,建议再看看上面的参考。
cv2.getOptimalNewCameraMatrix中的alpha和roi参数cv2.getOptimalNewCameraMatrix中的alpha和roi参数

动手实验(alpha=0或者1,roi的crop)

自己搞的棋盘有点不平,所以结果差了点儿emmmmm
手机拍摄的分辨率太高了我就在图片上截图了
1.原图(3000 * 4000)
cv2.getOptimalNewCameraMatrix中的alpha和roi参数2.alpha = 0,roi不进行裁剪(3000 * 4000)
左右两边细微的黑边,图片放大了
cv2.getOptimalNewCameraMatrix中的alpha和roi参数3.alpha = 0,roi进行裁剪(2999 * 3999)
可以由分辨率看出裁掉了一些黑边部分
cv2.getOptimalNewCameraMatrix中的alpha和roi参数4.alpha = 1,roi不进行裁剪(3000 * 4000)
我也不知道怎么变桶状区域了,手机用的广角,我用其他相机拍undistort后是枕状区域

cv2.getOptimalNewCameraMatrix中的alpha和roi参数5.alpha = 1,roi进行裁剪(1526 * 2764)
把黑色截掉了
cv2.getOptimalNewCameraMatrix中的alpha和roi参数

总结

1.alpha=0,视场(两张纸变大了发现没有?)会放大,alpha=1,视场不变
2.进行roi的crop会裁掉一些像素