Giter VIP home page Giter VIP logo

Comments (9)

lukasalexanderweber avatar lukasalexanderweber commented on August 21, 2024

Hey,

I also thought about informing the user if not all of the images are stitched.

I think it should at least report which pics are not
stiched and suggest to experiment with some settings

this is a good idea. I will implement this if I find some time, or you can do it and create a PR if you wish

from stitching.

lukasalexanderweber avatar lukasalexanderweber commented on August 21, 2024

To summarize:

Mostly users of the stitching package will have a set of images which ALL should be included in the final panorama. By setting the confidence threshold to 1, by default images are sorted out if they don't have good enough matches. In this case the user should be informed.

from stitching.

lukasalexanderweber avatar lukasalexanderweber commented on August 21, 2024

BTW do you need help for your images or have you figured out how to generate a complete panorama?

from stitching.

emard avatar emard commented on August 21, 2024

from stitching.

lukasalexanderweber avatar lukasalexanderweber commented on August 21, 2024

Yeah a Sample Set would be helpful

from stitching.

emard avatar emard commented on August 21, 2024

from stitching.

lukasalexanderweber avatar lukasalexanderweber commented on August 21, 2024

try

stitch Screen* --confidence_threshold 0.2 --matches_graph_dot_file matches.txt --detector sift

and add

--final_megapix 0.01

if you don't want to wait for so long if you're just trying out some settings.

--matches_graph_dot_file matches.txt

this will create a file with matching informations, especially the confidences. We can see that with the default settings the confidences are too low, thats why so many images are filtered out. We can lower the --confidence_threshold to include more images. Changing the Feature Detector to SIFT improves the matches significantly. Here is the resulting matching graph:

graph matches_graph{
"Screen20221018_132345.jpg" -- "Screen20221018_132408.jpg"[label="Nm=8, Ni=8, C=0.769231"];
"Screen20221018_132408.jpg" -- "Screen20221018_132445.jpg"[label="Nm=14, Ni=14, C=1.14754"];
"Screen20221018_132500.jpg" -- "Screen20221018_132515.jpg"[label="Nm=6, Ni=6, C=0.612245"];
"Screen20221018_132544.jpg" -- "Screen20221018_132610.jpg"[label="Nm=38, Ni=38, C=1.95876"];
"Screen20221018_132610.jpg" -- "Screen20221018_132628.jpg"[label="Nm=7, Ni=7, C=0.693069"];
"Screen20221018_132628.jpg" -- "Screen20221018_132646.jpg"[label="Nm=29, Ni=29, C=1.73653"];
"Screen20221018_132646.jpg" -- "Screen20221018_132702.jpg"[label="Nm=19, Ni=19, C=1.38686"];
"Screen20221018_132725.jpg" -- "Screen20221018_132745.jpg"[label="Nm=33, Ni=29, C=1.62011"];
"Screen20221018_132745.jpg" -- "Screen20221018_132806.jpg"[label="Nm=327, Ni=315, C=2.9689"];
"Screen20221018_132806.jpg" -- "Screen20221018_132825.jpg"[label="Nm=24, Ni=21, C=1.38158"];
"Screen20221018_132825.jpg" -- "Screen20221018_132839.jpg"[label="Nm=28, Ni=28, C=1.70732"];
"Screen20221018_132839.jpg" -- "Screen20221018_132911.jpg"[label="Nm=40, Ni=40, C=2"];
"Screen20221018_132925.jpg" -- "Screen20221018_132958.jpg"[label="Nm=24, Ni=24, C=1.57895"];
"Screen20221018_132958.jpg" -- "Screen20221018_133013.jpg"[label="Nm=41, Ni=39, C=1.92118"];
"Screen20221018_133013.jpg" -- "Screen20221018_133031.jpg"[label="Nm=22, Ni=21, C=1.43836"];
"Screen20221018_133031.jpg" -- "Screen20221018_133043.jpg"[label="Nm=39, Ni=39, C=1.9797"];
"Screen20221018_133043.jpg" -- "Screen20221018_133057.jpg"[label="Nm=8, Ni=8, C=0.769231"];
"Screen20221018_133218.jpg" -- "Screen20221018_133240.jpg"[label="Nm=41, Ni=41, C=2.0197"];
"Screen20221018_133240.jpg" -- "Screen20221018_133326.jpg"[label="Nm=28, Ni=24, C=1.46341"];
"Screen20221018_133326.jpg" -- "Screen20221018_133343.jpg"[label="Nm=40, Ni=34, C=1.7"];
"Screen20221018_133343.jpg" -- "Screen20221018_133352.jpg"[label="Nm=10, Ni=10, C=0.909091"];
"Screen20221018_133352.jpg" -- "Screen20221018_133417.jpg"[label="Nm=25, Ni=25, C=1.6129"];
"Screen20221018_133417.jpg" -- "Screen20221018_133438.jpg"[label="Nm=11, Ni=11, C=0.973451"];
"Screen20221018_133438.jpg" -- "Screen20221018_133453.jpg"[label="Nm=9, Ni=9, C=0.841121"];
"Screen20221018_133506.jpg" -- "Screen20221018_133519.jpg"[label="Nm=12, Ni=12, C=1.03448"];
"Screen20221018_133519.jpg" -- "Screen20221018_133536.jpg"[label="Nm=77, Ni=77, C=2.47588"];
"Screen20221018_133536.jpg" -- "Screen20221018_133558.jpg"[label="Nm=8, Ni=8, C=0.769231"];
"Screen20221018_133558.jpg" -- "Screen20221018_133613.jpg"[label="Nm=28, Ni=28, C=1.70732"];
"Screen20221018_133613.jpg" -- "Screen20221018_133623.jpg"[label="Nm=15, Ni=15, C=1.2"];
"Screen20221018_133640.jpg" -- "Screen20221018_133650.jpg"[label="Nm=61, Ni=49, C=1.86312"];
"Screen20221018_133132.jpg";
"Screen20221018_133631.jpg";
}

only two images are not processed, I havn't analized why. For a graphic representation visit graphviz

result

Here is a low resolution result of the stitching

from stitching.

emard avatar emard commented on August 21, 2024

from stitching.

lukasalexanderweber avatar lukasalexanderweber commented on August 21, 2024

You could try the other two detectors brisk or akaze, but other than that I dont see that much potential for further optimization but more overlap. Cheers Lukas

from stitching.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.