Dear All,
Commonly described method for image fusion in
in several publications involves inverse PCA transform
to get the new R,G,B bands of multispectral image from
the principle components.
Does any of you know a script or an algorithm to implement
inverse PCA in GRASS?
Thanks in advance.
Venka
On Thursday 06 December 2007 08:05:28 am Venkatesh Raghavan wrote:
Dear All,
Commonly described method for image fusion in
in several publications involves inverse PCA transform
to get the new R,G,B bands of multispectral image from
the principle components.
Does any of you know a script or an algorithm to implement
inverse PCA in GRASS?
Hi,
I have never heard of inverse PCA, do you mean visualizing the components in
some kind of color composite?
If that is what you want try running i.pca with the option to re-scale
components to 0-255, generate a greyscale color map for each component, and
then visualize with d.rgb or r.composite.
Cheers,
Dylan
Venka,
I think what your asking is if anyone knows how to apply the transformation matrix that was used to derive you pca components in reverse to get back to the original coordinate system. Something like what is done in a decorrelation stretch?
Hopefully someone more knowledgeable than I can elaborate, but the general idea is as follows;
if the i.pca is capable of divulging the eigenvectors, you can use r.mapcalc to apply them in reverse. else;
r.covar -> m.eigensystem -> mapcalc -> "do something with your principal components" -> mapcalc (inverse rotation) -> "original coordinate system"
You can take a look at the bottom of the r.covar page for more info. The big "if" is on the status of m.eigensystem. I tried the link to the manual page and it is broken so I'm unsure of it's status.
Cheers,
Mike
On 6-Dec-07, at 9:05 AM, Venkatesh Raghavan wrote:
Dear All,
Commonly described method for image fusion in
in several publications involves inverse PCA transform
to get the new R,G,B bands of multispectral image from
the principle components.
Does any of you know a script or an algorithm to implement
inverse PCA in GRASS?
Thanks in advance.
Venka
_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user
Michael and Dylan,
Thanks for the response.
The image fusion method that we are trying to implement on GRASS
is briefly described in the paper below and also quite a few
others that I have skimmed through.
Multisensor image fusion in remote sensing: concepts, methods
and applications by POHL and VAN GENDEREN
http://www.cnr.berkeley.edu/~bingxu/UU/spatial/Readings/Pohl1998IJRS.pdf
I had also not heard of Inverse PCA before and was thinking
the the method suggested by Dylan would be adequate.
But, there seems to be more to it than I can comprehend at
this moment, so I am trying by doing some excersise on
PCA based image fusion in GRASS. Will try to look into
the algorithm suggested by Michael too.
Kind regards
Venka
Michael Perdue wrote:
Venka,
I think what your asking is if anyone knows how to apply the transformation matrix that was used to derive you pca components in reverse to get back to the original coordinate system. Something like what is done in a decorrelation stretch?
Hopefully someone more knowledgeable than I can elaborate, but the general idea is as follows;
if the i.pca is capable of divulging the eigenvectors, you can use r.mapcalc to apply them in reverse. else;
r.covar -> m.eigensystem -> mapcalc -> "do something with your principal components" -> mapcalc (inverse rotation) -> "original coordinate system"
You can take a look at the bottom of the r.covar page for more info. The big "if" is on the status of m.eigensystem. I tried the link to the manual page and it is broken so I'm unsure of it's status.
Cheers,
Mike
On 6-Dec-07, at 9:05 AM, Venkatesh Raghavan wrote:
Dear All,
Commonly described method for image fusion in
in several publications involves inverse PCA transform
to get the new R,G,B bands of multispectral image from
the principle components.
Does any of you know a script or an algorithm to implement
inverse PCA in GRASS?
Thanks in advance.
Venka
_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user
On Thu, 2007-12-06 at 15:47 -0700, Michael Perdue wrote:
if the i.pca is capable of divulging the eigenvectors, you can use
r.mapcalc to apply them in reverse. else;
FYI, I modified i.pca awhile back to write eigenvectors to all output
histories and properly handle null cells.
--
73, de Brad KB8UYR/6 <rez touchofmadness com>