| eLynx SDK
v3.0.1 C++ image processing API reference |
#include <IImageRestoration.h>

Public Member Functions | |
| virtual | ~IImageRestoration () |
| virtual bool | FastInpaint (AbstractImage &ioImage, const ImageLub &iBinaryMask, bool iUseRegion, uint32 iChannelMask, ProgressNotifier &iNotifier) const =0 |
| virtual bool | FastMarchingInpaint (AbstractImage &ioImage, const ImageLub &iBinaryMask, uint32 iSize, bool iUseRegion, uint32 iChannelMask, ProgressNotifier &iNotifier) const =0 |
| virtual bool | ExemplarBasedInpaint (AbstractImage &ioImage, const ImageLub &iBinaryMask, const Math::AOBBox2i &iSearchArea, uint32 iPatchSize, bool iUseRegion, uint32 iChannelMask, ProgressNotifier &iNotifier) const =0 |
Definition at line 71 of file IImageRestoration.h.
| virtual eLynx::Image::IImageRestoration::~IImageRestoration | ( | ) | [virtual] |
| virtual bool eLynx::Image::IImageRestoration::FastInpaint | ( | AbstractImage & | ioImage, | |
| const ImageLub & | iBinaryMask, | |||
| bool | iUseRegion, | |||
| uint32 | iChannelMask, | |||
| ProgressNotifier & | iNotifier | |||
| ) | const [pure virtual] |
Implementation based on Fast Digital Image Inpainting article.
| [1] | Fast Digital Image Inpainting September 3, 2001 by Manuel M. Oliveira, Brian Bowen, Richard McKenna and Yu-Sung Chang Department of Computer Science State University of New York at Stony Brook |
Very simple inpainting algorithm based on the convolution of the small image region to be restored which is equivalent to the isotropic diffusion. The convolution kernel is a weighted average 3x3 kernel with a zero weight at the center.
| ioImage | image to be restored. | |
| iBinaryMask | image bitmap. The pixel's value is either IPT_UNKNOWN for pixels to be inpainted or IPT_KNOWN for known pixels. | |
| iUseRegion | flag to use optimizations to inpaint only localized regions. Caution: Some images produce better results without this optimization. | |
| iChannelMask | selected channels to be processed. Default is all. | |
| iNotifier | a notifier for progression, log and cancel. |
Implemented in eLynx::Image::ImageRestorationImpl< Pixel >.
| virtual bool eLynx::Image::IImageRestoration::FastMarchingInpaint | ( | AbstractImage & | ioImage, | |
| const ImageLub & | iBinaryMask, | |||
| uint32 | iSize, | |||
| bool | iUseRegion, | |||
| uint32 | iChannelMask, | |||
| ProgressNotifier & | iNotifier | |||
| ) | const [pure virtual] |
Implementation based on An Image Inpainting Technique Based on the Fast Marching Method article.
| [1] | An Image Inpainting Technique Based on the Fast Marching Method May 21, 2003 by Alexandru Telea Eindhoven University of Technology |
Simple inpainting algorithm based on the Fast Marching Method (FMM). Pixels are inpainted in the order based on the distance to the know area.
| ioImage | image to be restored. | |
| iBinaryMask | image bitmap. The pixel's value is either IPT_UNKNOWN for pixels to be inpainted or IPT_KNOWN for known pixels . | |
| iSize | size of the pixel's neighborhood. Min value is 3. | |
| iUseRegion | flag to use optimizations to inpaint only localized regions. Caution: Some images produce better results without this optimization. | |
| iChannelMask | selected channels to be processed. Default is all. | |
| iNotifier | a notifier for progression, log and cancel. |
Implemented in eLynx::Image::ImageRestorationImpl< Pixel >.
| virtual bool eLynx::Image::IImageRestoration::ExemplarBasedInpaint | ( | AbstractImage & | ioImage, | |
| const ImageLub & | iBinaryMask, | |||
| const Math::AOBBox2i & | iSearchArea, | |||
| uint32 | iPatchSize, | |||
| bool | iUseRegion, | |||
| uint32 | iChannelMask, | |||
| ProgressNotifier & | iNotifier | |||
| ) | const [pure virtual] |
Implementation based on Region Filling and Object Removal by Exemplar-Based Image Inpainting article.
Inpainting algorithm to remove int64 objects from images. The algorithm propagets texture and structure into the inpainting region by filling best-fit patches in the order based on the confidence level.
| [1] | Region Filling and Object Removal by Exemplar-Based Image Inpainting SEP 2004 by A. Criminisi*, P. Pérez and K. Toyama Microsoft Research, Cambridge (UK) and Redmond (US) IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 13, NO. 9 |
| ioImage | image to be restored. | |
| iBinaryMask | image bitmap. The pixel's value is either IPT_UNKNOWN for pixels to be inpainted or IPT_KNOWN for known pixels. | |
| iSearchArea | bounding box to restrict the image area which would be searched for the patches to fill. | |
| iPatchSize | size of the patch. Min value is 3. | |
| iUseRegion | flag to use optimizations to inpaint only localized regions. Caution: Some images produce better results without this optimization. | |
| iChannelMask | selected channels to be processed. Default is all. | |
| iNotifier | a notifier for progression, log and cancel. |
Implemented in eLynx::Image::ImageRestorationImpl< Pixel >.