I am reading now the “Learn OpenCV3” O’Reilly book. Now I am experimenting with the camera calibration functions. I started to test with a GoPro hero 8 and the chessboard and circle grid targets. I got really results, but when I tried the same algorithm with more distorted lower resolution camera I was not able to find the pattern on the images. I tried to investigate the problem, and tried to change the parameters, but nothing helped. When I run the blob detector on these images almost all the time it returns the circle grid as detected blobs. When I try to use this detector with the findcirclegrid() it still not finding the pattern. I tried to use in symmetric, asymmetric and clustering mode. I read the documentation, but still not clear why fail the grid finding when the blob detector works well.
The image acquisition environment is not good.
There is a foreign object on the lens or lens cover, and it looks like there is a scratch.
This makes image processing difficult.
I recommend that you try using a chess board instead of a circle board.