Getting weird projection matrix from camera calibration
I have low distortion lens with 90 degree hfov. Everytime I do calibration ı get different projection matrix and some of them really weird. Tough my camera matrix seems logical. What may cause this problem ? Can I change the projection matrix manually by typing values from camera matrix ?
Output 1 :

Output 2 :

Thanks in advance
I have faced a similar problem.
Environments:
- ROS version: melodic
- ros-melodic-camera-calibration version: 1.15.0-1bionic.20210921.210434
- launch file of camera node:
<launch>
<group ns="chest_camera_node">
<node pkg="uvc_camera" type="uvc_camera_node" name="chest_camera_node" output="screen">
<param name="device" value="/dev/chestcamera" />
<param name="width" value="1280" />
<param name="height" value="720" />
<param name="camera_info_url" type="string" value="file://$(find sciurus17_vision)/config/chest_camera.yaml" />
<param name="format" value="jpeg" />
<param name="io_method" value="mmap" />
<param name="camera_name" value="chest_camera" />
<param name="frame_id" value="chest_camera_link" />
<param name="output_frame" value="chest_camera_link" />
<param name="fps" type="int" value="30" />
</node>
<node pkg="image_transport" type="republish" name="transport" args="in_transport in:=image_raw out:=image _image_transport:=compressed" />
<node pkg="image_proc" type="image_proc" name="image_proc" >
<remap from="image_raw" to="image" />
</node>
</group>
</launch>
The command to run camera_calibration:
$ rosrun camera_calibration cameracalibrator.py --camera_name=chest_camera --size=9x6 --square=0.025 image:=/chest_camera_node/image_raw
before calibration:

after calibration:

I don't see anything particular here that is actionable - for help with configuration of a particular device, I would recommend posting to https://robotics.stackexchange.com