[vtkusers] logarithmic scaling
Renaud Isabelle
renauisa at yahoo.fr
Wed Jul 13 10:20:33 EDT 2005
Hi,
I'm still triing to improve the quality of visualization of raw data.
- by computing absolute value of raw data, my displayed images are too dark.
- by applliing a log scaling after abs(), my displayed data are now too bright. That's the reason why:
after having taken a look on LogImageFilter and LogImageAdaptor, it seems that the case where input data = 0 is not dealed with: log(x=0) returns a very big negative value equivalent to -infinite. So, when I applied a linear rescaling between 0 and 255, my rescaled data is in [-infinite, alpha].
Here is why I did:
absFilter->SetInput( imageInitiale );
logFilter->SetInput( absFilter->GetOutput() );
rescaleFilter->SetInput( logFilter->GetOutput()) ;
So I'm triing to implement my own logImageAdaptor to deal with the case where my input data is null.
class LogPixelAccessor
{
public:
typedef short InternalType;
typedef short ExternalType;
ExternalType Get( const InternalType & input ) const
{
return ( (input != 0) ? (ExternalType)log((double)input) : 0 );
}
};
But I'm always having an error at execution that I can't solve: the debugger says error encounterd is in Set function of DefaultPixelAccessor class.
class ITK_EXPORT DefaultPixelAccessor
{
public:
/** External typedef. It defines the external aspect
* that this class will exhibit. */
typedef TType ExternalType ;
/** Internal typedef. It defines the internal real
* representation of data. */
typedef TType InternalType ;
/** Set the pixel. */
inline void Set(TType & output, const TType & input) const
{output = input;}
--> Could anybody tell me why?
isabelle
Kuba Bican <kuba at smyslzivota.cz> a écrit :
Hi Isabelle,
logarithmic scaling can be done by these filters:
LogImageFilter (
http://www.itk.org/Doxygen/html/classitk_1_1LogImageFilter.html )
Log10ImageFilter (
http://www.itk.org/Doxygen/html/classitk_1_1Log10ImageFilter.html )
and/or adaptors:
LogImageAdaptor (
http://www.itk.org/Doxygen/html/classitk_1_1LogImageAdaptor.html )
Log10ImageAdaptor (
http://www.itk.org/Doxygen/html/classitk_1_1Log10ImageAdaptor.html )
Hope this will help you.
Regards,
Jakub
Renaud Isabelle napsal(a):
> Hi Luis,
>
> In one of your numerous posted replies, you already mentioned the use
> of *logarithmic scaling* to improve visualisation of images.
>
> "It is not rare to use a logarithmic intensity transformation in order
> to display the FFT output and still be able to "see" something."
> http://public.kitware.com/pipermail/insight-users/2004-November/011201.html
>
> This is actually what I need to do to improve the quality of my
> ultrasonographic image.
>
> --> Could you tell me a way to perform this logarithmic scaling? Is
> there already a function for that, or maybe could I compute my own one
> if you tell me how to get access of the pixel data of my image
> displayed with ITK and VTK.
>
> Thanks for answer,
>
> Isabelle
>
> ------------------------------------------------------------------------
> *Appel audio GRATUIT partout dans le monde* avec le nouveau Yahoo!
> Messenger
> Téléchargez le ici !
>
>
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Insight-users mailing list
>Insight-users at itk.org
>http://www.itk.org/mailman/listinfo/insight-users
>
>
---------------------------------
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger
Téléchargez le ici !
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20050713/d39d7e4c/attachment.htm>
More information about the vtkusers
mailing list