Open rlatjdrhks74 opened 5 years ago
Ratio calculation
There are other people who has this problem. So i solve this problem according to the algorithm on the below.
Concept : Receive the images and then calculate the zoom ratio between images.
How to do : Use ORB and save the (x,y) of matching points in struct(Use Point), and then select the two points in each image. Next, calculate the distance between two points in each image, and then compare the two calculated value. So i can get the ratio of two images.
References : https://msdn.microsoft.com/en-us/library/windows/desktop/dd162805(v=vs.85).aspx https://www.researchgate.net/post/How_can_I_match_keypoints_in_SIFT (people who has problem)
Distortion between images
Concept : When the obstacle more getting closer with camera, scale of the obstacle is more bigger than the other objects that far from obstacle. This is the distortion.
Test : I tested what distance is the limitation of image distortion. I set the obstacle and take pictures according to distance between camera and obstacle. And then i apply my algorithm to all pictures, as a result of that, i can get the information that limitation distance is 80 centimeters. It means if the distance of between obstacle and camera is closer than 80 centimeters, it can occur scale distortion in obstacle.
Data pre-processing
Definition : Raw data is highly susceptible to noise, missing values, and inconsistency. The quality of data affects the data mining results. In order to help improve the quality of the data and, consequently, of the mining results raw data is pre-processed so as to improve the efficiency and ease of the mining process. Data preprocessing is one of the most critical steps in a data mining process which deals with the preparation and transformation of the initial dataset. It is divided into Data cleaning, Data Intergration, Data transformation, Data Reduction.
Where can be used : Machine learning, Computational biology.
Advantages : Can improve generalizablity of model, Can save the time cost.
Disadvantages : Must run other program seperately for pre-processing, Must send data to project.
References : http://iasri.res.in/ebook/win_school_aa/notes/Data_Preprocessing.pdf https://en.wikipedia.org/wiki/Data_pre-processing https://www.quora.com/What-are-the-advantages-of-preprocessing-the-data-before-applying-on-machine-learning-algorithm (Answered Shehroz Khan, ML Researcher, Postdoc @U of Toronto) https://bdataanalytics.biomedcentral.com/articles/10.1186/s41044-016-0014-0
ORB function in OpenCV
Summary : ORB function means Oriented FAST and Rotated BRIEF. It uses FAST-9 detection that searching for some key points, and then calculates the orientation of searched key points. This is the method that pursues fast key points searching.
Pros : More accuracy and faster than FAST algorithm, robustness at image rotation, zoom, etc..
Cons : Not as robust as SURF algorithm.
Opinion : The reason of i use this algorithm is fast function and has robustness in image zoom. So i think this algorithm can perform well about image zoom what i am working on.
What is FAST : FAST(Features from Accelerated Segment Test) algorithm was proposed by Edward Rosten and Tom Drummond in their paper “Machine learning for high-speed corner detection” in 2006. It is several times faster than other existing corner detectors. And it has high quality in key points as much as other existing methods. But it is not robust to high levels of noise. It is dependant on a threshold.
What is BRIEF : BRIEF(Binary Robust Independent Elementary Features) algorithm was proposed by Michael Calonder, Vincent Lepetit, Christoph Strecha, and Pascal Fua, “BRIEF: Binary Robust Independent Elementary Features”, 11th European Conference on Computer Vision (ECCV), Heraklion, Crete. LNCS Springer, September 2010. BRIEF is a feature descriptor, it doesn’t provide any method to find the features. It is required that use any other feature detectors like SIFT, SURF etc. It is a faster method feature descriptor calculation and matching. It also provides high recognition rate unless there is large in-plane rotation.
References : https://docs.opencv.org/3.0-alpha/doc/py_tutorials/py_feature2d/py_orb/py_orb.html https://ieeexplore.ieee.org/document/6126544/#full-text-section https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_feature2d/py_fast/py_fast.html https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_feature2d/py_brief/py_brief.html