Hello, I'm fairly new here (and new to Computer Vision in general), I've been banging my head on this for a little while and was wondering if folks here might be able to help me out.
I'm trying to match one image to another, specifically to find keypoints between the images. The two images would be greyscale landscapes taken by either satellites or airplanes, on different days, so lighting conditions are likely to be different, as well as things like snow cover (these pictures are mostly in the polar regions) and in this case, surrounding sea ice. I've attached an example pair. The eye can quickly tell these are two images of the same island/peninsula even though the sea ice is dramatically different, but I'm having trouble getting a computer to do the same. I've been using ASIFT/SURF but that doesn't seem to work well, the pixel-by-pixel matches are just a bit too different for those algorithms to make good matches, it seems. Or perhaps I'm just not using them well. It's more the overall structure of the landscape, the wide-scale topography, that I'm trying to pin down in order to find matching keypoints between them. Individual rocks or cracks will be hard to match, but the overall contour of the island's boundary remains fairly constant.
I think perhaps some type of line- or edge-detection (then fed into SURF or similar?) might work, but I'm unsure. I'm not necessarily looking for exact code from folks, just a general strategy that might work well. It's been suggested that some type of neural-net/kdtree might help, but I don't have a large bank of images to train it to detect individual landscape features, so that would be tough.
Any help? Thanks, - M