Computer-Vision-works
This repository is created for archieving works from computer vision works.
It composes to panorama-making, cartoonize, camera-calibration and pose-estimation.
Panorama_cv
This is a program for making panorama image using opencv.
Stitcher combine multiple images to single seamless panorama image.
The steps are following:
- Extract feature from all images
- Select m candidate matching images that have the most feature matches to one image
- Find geometrically consistent feature matches to solve for the homography between pairs of images.
- Find connected components of image matches.
- Perform transformation.
-
Run
python panorama_cv.py IMAGEPATH1 IMAGEPATH2 ...
-
Results
Input
Output
cartoonize_cv
Program to cartoonize real photo.
For catoonzie, we use 1) constrast stretching and 2) k-means clustering.
- increase the contrast of image.
-
Run
python photo_to_cartoon.py INPUTIMAGE
-
Results
Input
Output
ChatGPT
it combines edge and blurred image.Camera-calibration-on-A_cv
The program that calibrate chessboard video and put A on chessboard.
- Run
python camera_calibration_on_A.py VIDEOPATH
If you change the shooting direction of video, the position of A change, too.
After performing the simple AR, omits the calibration results.
Camera Calibration Results (example)
- RMS error = 0.3674050821064493
- Camera matrix (K) =
[[1.64016431e+03 0.00000000e+00 5.70771387e+02]
[0.00000000e+00 1.64380630e+03 9.91567459e+02]
[0.00000000e+00 0.00000000e+00 1.00000000e+00]]
(focal length = 1.64e+03, principal point x = 5.70771387e+02, principal point y = 9.91567459e+02) - Distortion coefficient (k1, k2, p1, p2, k3, ...) = [ 0.2012792 -1.13786191 0.00828182 0.00496422 2.28385296]