|
View:
New views
4 Messages
—
Rating Filter:
Alert me
|
|
|
[Fwd: Re: Contribution: Non-rigid transformation with thin plate splines]-------- Original Message -------- Subject: Re: [Opencvlibrary-devel] Contribution: Non-rigid transformation with thin plate splines Date: Wed, 19 Aug 2009 01:19:43 +0200 From: Radu Bogdan Rusu <rusu@...> Reply-To: Radu Bogdan Rusu <rusu@...> Organization: Technische Universitaet Muenchen To: hyblade <schmieder.matthias@...> References: <25027500.post@...> So TPS is very interesting, but I would actually like to see more around the CPD (Coherent Point Drift) theorems, rather than just classical thin plate splines. In any case, TPS is still useful for a variety of problems, including 3D registration. However, I wonder if OpenCV is the right place at the moment to incorporate such an algorithm. Cheers, Radu. hyblade wrote: > Hi there, > > I'd like to ask if there is interest in a "thin plate spline implementation" > which I made some time ago using OpenCV. Since as of today there isn't a > possibility to do a non-rigid transformation with OpenCV this could be of > good use. > > The algorithm i wrote is based on Bookstein's "Principal Warps" which he > wrote back in the late 80s. > > http://www.engineering.uiowa.edu/~aip/papers/bookstein-89.pdf > > I extented the algorithm slightly to a more flexible integration scheme. The > algorithm is in a early testing state but returns plausible results with > reasonable speed. If there is any interest in the algorithm I could > definitely implement some improvements that will help speeding up the > process and extending the actual 2D application to 3D. > > I made some good expierences with this algorithm with both 2D- and > 3D-problems. I used it to register three dimensional Confocal laser scanning > microscopy images of cellular probes while studying at the University > Freiburg (Germany). In combination with a good interest point detector (such > as SURF or SIFT) the results are quite good! > > If you like I could send you some examples or code snipplets?! -- | Radu Bogdan Rusu | http://rbrusu.com/ -- | Radu Bogdan Rusu | http://rbrusu.com/ ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Opencvlibrary-devel mailing list Opencvlibrary-devel@... https://lists.sourceforge.net/lists/listinfo/opencvlibrary-devel |
|
|
Re: [Fwd: Re: Contribution: Non-rigid transformation with thin plate splines]I think the TPS is quite important for OpenCV since it's planed to integrate image stiching algorithms. I personally used the Algorithm to fuse/register 2D scenes that had more than just global linear misplacements. The nice thing about the TPS algorithm is that it performs nicely with a minimal number of corresponding points.
While writing my diploma i tested the Coherent Point Point Drift algorithm by Myronenko in it's first MATLAB version. It had poor results for my 3-dimensional registration problem but acted quite good with non-rigid 2-dimensional probes. I planned to implement the actual MATLAB version of the Coherent Point Drift in OpenCV for myself but haven't had enough time for it now. The algorithm is now quite complex and uses some additional stages to improve stability and speed. Anyway i'm trying to get to work as soon as possible but i think the realization has to wait a few weeks longer since my holidays will start in the middle of september, but i definitely will try to implement the CPD-Algorithm. (Has anyone an idea if the actual algorithm is patented) The TPS though is implemented and ready to use - not in it's end state but quite flexible. I thought of changing the algorithm to a more nested layout that fits better into the OpenCV framework (in the actual version there ist some "std::"-stuff such as vectors used). The input to the algorithm would simply be two interest point sequences and the result could be the interpolation maps used by several OpenCV functions. There are some parameters though, i.e. the alpha parameter which isn't found in Bookstein's original work but helps to get a smoother result without constraining the computational time. I'm not angry if you think deformation maps aren't necessary for the OpenCV library, but I definetly think they are especially for problems like image mosaicing and registration. I made two images where a visual and a infrared image a fused together. Both unprocessed images show heavy (radial) distortions which are non-linear deformations but still the algorithm performs nicely with few interest points (here the number of points was five). TPSFusion_1.png TPSFusion_2.png
|
|
|
Re: [Fwd: Re: Contribution: Non-rigid transformation with thin plate splines]Good point.
I actually have an implementation of CPD that I wrote some time ago, when I started working on 3D registration problems. It's basically a rewrite of the matlab code. If you have the time and want to play around with that / convert it to cleaner OpenCV code, I'd be happy to send it your way. Cheers, Radu. hyblade wrote: > I think the TPS is quite important for OpenCV since it's planed to integrate > image stiching algorithms. I personally used the Algorithm to fuse/register > 2D scenes that had more than just global linear misplacements. The nice > thing about the TPS algorithm is that it performs nicely with a minimal > number of corresponding points. > > While writing my diploma i tested the Coherent Point Point Drift algorithm > by Myronenko in it's first MATLAB version. It had poor results for my > 3-dimensional registration problem but acted quite good with non-rigid > 2-dimensional probes. > > I planned to implement the actual MATLAB version of the Coherent Point Drift > in OpenCV for myself but haven't had enough time for it now. The algorithm > is now quite complex and uses some additional stages to improve stability > and speed. Anyway i'm trying to get to work as soon as possible but i think > the realization has to wait a few weeks longer since my holidays will start > in the middle of september, but i definitely will try to implement the > CPD-Algorithm. (Has anyone an idea if the actual algorithm is patented) > > The TPS though is implemented and ready to use - not in it's end state but > quite flexible. I thought of changing the algorithm to a more nested layout > that fits better into the OpenCV framework (in the actual version there ist > some "std::"-stuff such as vectors used). > > The input to the algorithm would simply be two interest point sequences and > the result could be the interpolation maps used by several OpenCV functions. > There are some parameters though, i.e. the alpha parameter which isn't found > in Bookstein's original work but helps to get a smoother result without > constraining the computational time. > > I'm not angry if you think deformation maps aren't necessary for the OpenCV > library, but I definetly think they are especially for problems like image > mosaicing and registration. > > I made two images where a visual and a infrared image a fused together. Both > unprocessed images show heavy (radial) distortions which are non-linear > deformations but still the algorithm performs nicely with few interest > points (here the number of points was five). > > http://www.nabble.com/file/p25038770/TPSFusion_1.png TPSFusion_1.png > http://www.nabble.com/file/p25038770/TPSFusion_2.png TPSFusion_2.png > > > > Radu Bogdan Rusu-2 wrote: >> So TPS is very interesting, but I would actually like to see more around >> the CPD (Coherent Point Drift) theorems, rather >> than just classical thin plate splines. >> >> In any case, TPS is still useful for a variety of problems, including 3D >> registration. However, I wonder if OpenCV is >> the right place at the moment to incorporate such an algorithm. >> >> Cheers, >> Radu. >> > -- | Radu Bogdan Rusu | http://rbrusu.com/ ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Opencvlibrary-devel mailing list Opencvlibrary-devel@... https://lists.sourceforge.net/lists/listinfo/opencvlibrary-devel |
|
|
Re: [Fwd: Re: Contribution: Non-rigid transformation with thin plate splines]Year sure, that would be great,
As i said, i will definitely try to implement the actual CPD-Algorithm, so a startup-package would be a cool nice-to-have ;) Was there ever the idea of inserting non-rigid deformation models into the OpenCV library? And if the answer is 'Yes', why haven't there been any releases? My (still little) experiences with image processing techniques both in 2D and 3D show that there are many applications that profit from such deformation modeling techniques.
|
| Free embeddable forum powered by Nabble | Forum Help |