How to compare images to find the difference among them at specific locations .
8 次查看(过去 30 天)
显示 更早的评论
Our goal is to find the shift of coastline in the given two images. For this task i have the satellite images of coastline I tried Using edge detection to find the coastline. So what should be the next processes that I can do .
0 个评论
采纳的回答
Image Analyst
2018-5-24
First of all you have to make sure the images are the same resolution (number of pixels) over the area that is in common. Then next, register (align) the two images. Try imregister() or similar functions - see demos in the help. Crop after alignment, if necessary, to remove non-overlapping areas and make sure they're the same overall pixel dimensions (number of rows and columns). Then simply subtract them to find differences (non-zero values).
2 个评论
Image Analyst
2018-5-25
Each point may move a different amount. After all you're talking about the earth and it's not reasonable to expect a rigid translation over large areas, especially with coastlines which change rapidly in wildly varying ways.
You might want to look into "optical flow" - that's what I'd do.
更多回答(1 个)
Zhangxi Feng
2018-5-24
编辑:Zhangxi Feng
2018-5-24
I think you can complete the task if you convert the image into something you can ask MATLAB to numerically compare, such as when you convert the image into a matrix when you load it in with https://www.mathworks.com/help/matlab/ref/imread.html
You may also want to process the image a bit to remove as much of the non-coastline as possible to reduce your workload.
That being said, spotting differences for the coastline is a very difficult job itself since the accuracy depends on the resolution. This is known as the infinite coastline paradox. You may have to settle for less.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Segmentation and Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!