cropping 2 images together
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hoyong Yie
el 24 de Feb. de 2020
Comentada: Loïc Toraille
el 7 de Mayo de 2020
My goal is to cut out similar regions from 2 images.
I’m using the example method shown in ‘normxcorr2()’ to find similar regions from two images, and am using ‘imcrop()’ to cut those areas.
What I want to ask is if there is a way to cut both images when the overlapping area doesn’t completely fit inside the larger image.
For example, I have 2 images ‘A’ and ‘B’ sized 1865*1200 and 904*670 respectively. And from the normxcorr2 function I get [xpeak=799, ypeak=846] and from that [xoffset=129, yoffset=-58]. This makes area [130 -57 670 904] to be the highest similarity, which is not inside ‘A’.
Is there a way to cut out the overlapping area from both ‘A’ and ‘B’ without the process of manually calculating the coordinates where they overlap?
Thank you in advance for your help.
7 comentarios
darova
el 26 de Feb. de 2020
You have white white background on each image. Did you try to get rid of it?
Respuesta aceptada
Loïc Toraille
el 12 de Mzo. de 2020
Editada: Loïc Toraille
el 12 de Mzo. de 2020
Hello,
I had a similar issue and wrote the attached function Align2Images, which seems to work well in my case.
You can find attached as examples two slightly different images of same size image1 and image2, as well as a cropped version of image1.
The code is not particularly well written, but it does the job. Let me know if you have any questions.
1 comentario
Loïc Toraille
el 7 de Mayo de 2020
Hello,
I just want to add: if you're looking to align two slightly displaced images of the same size rather than find the location of a small image inside a bigger one, you're reaching the limits of normxcorr2.
Thankfully, you can in this case use normxcorr2_general which was written by another user:
Hope this helps.
Más respuestas (1)
Image Analyst
el 26 de Feb. de 2020
You can probably determine where the peak of the cross correlation is. Then place a cropping box around that but you'll need to clip the coordinates of the box if the sides of the box go outside the image. Then use imcrop() or indexing with that (potentially cropped) box.
3 comentarios
Image Analyst
el 28 de Feb. de 2020
I said to "clip the coordinates" and "then use imcrop or indexing" and you said you're already doing that. OK, I didn't have a chance to look at your code yet - maybe this weekend. However you then said your question was about how to "clip the coordinates" and "crop", but you said you were already doing that. If you're already doing that, then why are they your questions??? So someone's confused (probably me).
Ver también
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!