curve fitting to remove the obscure pixels
3 views (last 30 days)
Show older comments
I have a series of 180 images obtained using an ultrasound machine. I performed image registration on them (all the images are of the same object and they are aligned now). I was wondering how i would be able to apply curve fitting between these images to remove the obscure pixels. like i noticed that some pixels have a high pixel value in some images and some images have low pixels values of the same pixels. Any help would be appreciated. Thank you, Yazan
0 Comments
Answers (2)
Matt J
on 7 Jan 2014
I imagine median-filtering the data in those pixels might be easier than curve-fitting.
2 Comments
Matt J
on 7 Jan 2014
Edited: Matt J
on 7 Jan 2014
I assume your images are arranged as an array I(i,j,k) where k=1...180.
The intention was that you median filter along the k-axis, not across neighbouring i,j. Moreover, you should be doing it only for (i,j) coordinates where your bad pixels are located, something we presume you know.
I took the average of the 180 images and the resulted one was blurred which is not favored in my case
There may be problems with your registration accuracy in that case.
Image Analyst
on 7 Jan 2014
Try a modified median filter where you replace each pixel by the median if the pixel is more than some number different than the median. So it doesn't blur because not every pixel is being replaced - only real outliers are being replaced. I think that's what I do in the attached salt and pepper noise demos (one for color and one for grayscale).
4 Comments
Matt J
on 7 Jan 2014
Edited: Matt J
on 7 Jan 2014
If you're looking to consolidate the images into a single image, then the resolution of the final image will be limited by the registration accuracy, no matter what consolidation method you use. Averaging them together should have been a good reflection of the resolution you'll be limited to.
You should probably remove outlier pixel values before you do the image registration.
Image Analyst
on 7 Jan 2014
Yes. Remove outliers, then call imregister() (to align to the first image or some standard image), then cast to double (to avoid clipping) and sum into an accumulator image, finally divide by 180.
See Also
Categories
Find more on Geometric Transformation and Image Registration in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!