Insufficient amount of SIFT matches
See original GitHub issueHi the team of CARS: I am running CARS on a pair of Pleiades stereo imagery as shown below. As you can see, there are many clouds and NoData pixels in the raster.
The CARS outputs the following error:
$ cat 22-10-11_09h16m_sensor_to_full_res_dsm.log
22-10-11 09:22:08 :: ERROR :: Insufficient amount of matches found (< 100), can not safely estimate epipolar error correction and disparity range
22-10-11 09:27:21 :: ERROR :: CARS terminated with following error
Traceback (most recent call last):
File "/cars/venv/lib/python3.8/site-packages/cars/cars.py", line 172, in main_cli
used_pipeline.run()
File "/cars/venv/lib/python3.8/site-packages/cars/pipelines/sensor_to_full_resolution_dsm/sensor_to_full_resolution_dsm_pipeline.py", line 327, in run
matches_array = self.sparse_matching_app.filter_matches(
File "/cars/venv/lib/python3.8/site-packages/cars/applications/sparse_matching/sift.py", line 649, in filter_matches
raise ValueError(
ValueError: Insufficient amount of matches found (< 100), can not safely estimate epipolar error correction and disparity range
I checked the source code and found that this is in the TODO list.
My questions are:
-
What is the rationale behind the value 100 matching points? As far as I know, 4 matching points should be sufficient to find the affine fundamental matrix?
-
As the above image shows, it’s difficult to find matching points on cloud and water pixels and impossible on NoData pixels. And I believe that CARS is running SIFT on small tiles (500x500 pixels)? It would be great that CARS can continue the pipeline even there are insufficient matching points. Eg, let’s say there are 1000 tiles in total. If there is one tile doesn’t have enough SIFT points, then CARS can discard that tile and continue the rest 9999 tiles.
Thanks for reading.
Issue Analytics
- State:
- Created a year ago
- Comments:6 (3 by maintainers)
Top GitHub Comments
We will add a config parameter to lower this 100 number : @lionlai1989 : we await your data to investigate.
Can you contact us by e-mail (david.youssefi@cnes.fr) ? I think we can figure it out.