Hi Simon,<div><br></div><div>Just to let you know that the code works well!! Thanks!</div><div><br></div><div>By the way, I've been contacting with A/Prof Geoff Hugo (I believe you know him?), and he mentioned that he's been putting quite some effort on making RTK compatible with Varian format (HNC mainly). He mentioned that for the Varian format, we usually read in the "Norm Chamber value" (It's usually around 300) from each HNC header, and calculate the CT number by log(NormChamberValue/Intensity) * ScaleFactor, where the ScaleFactor is around 10000. I'm not too sure about the details, but I believe he will discuss it with you soon when he has time!</div>
<div><br></div><div>Cheers,</div><div>Andy<br><div class="gmail_extra"><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb">
<div class="h5"><div><br><div class="gmail_extra">
<br><br><div class="gmail_quote">2012/11/19 Simon Rit <span dir="ltr"><<a href="mailto:simon.rit@creatis.insa-lyon.fr" target="_blank">simon.rit@creatis.insa-lyon.fr</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hi Andy,<br>
I have pushed a fix for the Varian raw to attenuation conversion. Let<br>
me know if it meets what you've done. I will let you know if there is<br>
any other improvement of the conversion in the future.<br>
<span><font color="#888888">Simon<br>
</font></span><div><div><br>
On Fri, Nov 9, 2012 at 9:03 AM, Simon Rit<br>
<<a href="mailto:simon.rit@creatis.insa-lyon.fr" target="_blank">simon.rit@creatis.insa-lyon.fr</a>> wrote:<br>
> Hi Andy,<br>
><br>
> On Thu, Nov 8, 2012 at 5:58 PM, Andy Shieh <<a href="mailto:hsieandy@gmail.com" target="_blank">hsieandy@gmail.com</a>> wrote:<br>
>> Hi Simon,<br>
>><br>
>> Thank you. At the moment I'm just doing something similar to what you did<br>
>> for the Elekta system - using a log_ref (I'm using HND_INTENSITY_MAX) and<br>
>> minus the log of intensity plus one (I assume the plus one is to avoid<br>
>> taking the log of zero?).<br>
> Does it improve the results? You are welcome to share it if you feel<br>
> that this is of interest for other people.<br>
><br>
>><br>
>> Another few question:<br>
>> 1. Are you doing any normalization after reconstruction or forward<br>
>> projection?<br>
> No. Assuming you have line integral of the attenuation as input of the<br>
> reconstruction algorithm, you get the attenuation.<br>
><br>
>  Are the negative values in the reconstructed images simply a<br>
>> result of the ramp filtering?<br>
> Probably. You can use rtkprojections to look at what is the input of<br>
> the reconstruction algorithm.<br>
><br>
>> 2. If I want to compare a reprojection from an image reconstructed using RTK<br>
>> with the original projection, how should I make sure the normalization is<br>
>> correct? i.e. should I plus/minus or multiply the  reprojected attenuation<br>
>> before I use exponential and make it back to intensity values?<br>
> You basically have to do the inverse formula to what you have done. An<br>
> easy way of looking at what is going on with forward projections is to<br>
> look at this example:<br>
> <a href="http://wiki.openrtk.org/index.php/RTK/Scripts/ForwardProjection" target="_blank">http://wiki.openrtk.org/index.php/RTK/Scripts/ForwardProjection</a><br>
><br>
>> 3. The rtkforward projections doesn't seem to work correctly when I'm<br>
>> projecting using a geometry file containing several Projection (Angle). The<br>
>> output mha file seems to "repeat" after a couple of projections instead of<br>
>> showing all projections. I'm testing this on a Varian Half Fan geometry - it<br>
>> works fine if I break the geometry file down into one each for each<br>
>> projection angle and do the forward projection separately. I can send you a<br>
>> reprojection mha file if my description is unclear to you.<br>
> I works for me. Would you be able to fill in a bug report<br>
> (<a href="http://bug.openrtk.org/" target="_blank">http://bug.openrtk.org/</a>) with an example? You can generate volumes<br>
> and projections with rtkdrawgeometricphantom and<br>
> rtkprojectgeometricphantom.<br>
> Simon<br>
><br>
>><br>
>> Thanks Simon!!<br>
>><br>
>> Cheers,<br>
>> Andy.<br>
>><br>
>><br>
>><br>
>> 2012/10/24 Simon Rit <<a href="mailto:simon.rit@creatis.insa-lyon.fr" target="_blank">simon.rit@creatis.insa-lyon.fr</a>><br>
>>><br>
>>> Hi Andy,<br>
>>> Yes you're right, I have actually noticed recently that but I have not<br>
>>> worked a lot on Varian images because we don't have a Varian CBCT in<br>
>>> Lyon. I only had a sub-sampled acquisition from Greg of a Catphan that<br>
>>> I used to roughly check the geometry. As far as I can remember, when I<br>
>>> wrote this piece of code, I tried to use the same code as Plastimatch<br>
>>> but I could well have done it wrongly. I'm actually waiting for a new<br>
>>> complete Catphan acquisition from Greg to correct for this but if you<br>
>>> already have a patch to suggest or a set of images to send, feel free<br>
>>> to do it.<br>
>>> Thanks,<br>
>>> Simon<br>
>>><br>
>>> On Tue, Oct 23, 2012 at 2:48 PM, Andy Shieh <<a href="mailto:hsieandy@gmail.com" target="_blank">hsieandy@gmail.com</a>> wrote:<br>
>>> > Hi Simon,<br>
>>> ><br>
>>> > I was looking at "rtkVarianObiRawImageFilter.h", and realized that the<br>
>>> > attenuation is calculated from the projection image simply via a<br>
>>> > negative<br>
>>> > transformation (1-Intensity/HND_MaxIntensity).<br>
>>> > Is it usually the way this is done, and is there any reason for doing<br>
>>> > this?<br>
>>> > I would have thought attenuation should be calculated from intensity via<br>
>>> > logarithm (since I=I_0 exp(-mu x)).<br>
>>> > Thanks!!<br>
>>> ><br>
>>> > Cheers,<br>
>>> > Andy<br>
>>> ><br>
>>> > _______________________________________________<br>
>>> > Rtk-users mailing list<br>
>>> > <a href="mailto:Rtk-users@openrtk.org" target="_blank">Rtk-users@openrtk.org</a><br>
>>> > <a href="http://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users" target="_blank">http://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users</a><br>
>>> ><br>
>><br>
>><br>
</div></div></blockquote></div><br></div></div>
</div></div></blockquote></div><br></div></div>