How about Elekta and film analysis


Recently I came across Pylinac and exploring it. My interest was in Picket fence done on a film and analysing it. I found in Help that only Varian EPID images in Dicom format is supported. Elsewhere it mentions, films also can be analysed. Is there a possibility to analyze Film scans (TIFF format or others)?

Also, on reading the Help, I find many references to Varian only and nowhere Elekta is mentioned. For example, is there a possibility to check the log files of Elekta ?

Would appreciate your reply.

A great job in pylinac.




Thanks for the kind words.

Films (TIFF, JPG, etc) can be analyzed for starshots, but that’s about it right now. The use of film is decreasing in favor of the EPID, and it would be a fair amount of work to make picket fence and VMAT backwards compatible with film. Considering that these are “legacy” mediums, I didn’t think it worth it to support film. If enough people want it though, I will consider it.

If you are interested in simply loading and working with the images you should take a look at the Image class and the classes it generates, which have many helpful methods for loading and working with the image data. One item on my laundry list of to-do items is to make a cookbook for pylinac using it’s core classes so that physicists can make their own tools for image analysis rather than believe they are limited to what the main modules do. In reality, pylinac’s modules are just recipes of the core classes, which can be generically used.

Yes, pylinac is nearly exclusively for Varian. This isn’t intentional, just circumstantial, as the machines I grew up on were Varians. Someone was going to give me Elekta CBCT images but never did. If I was given several sets of Elekta CBCT dicom sets I’d take a serious look into supporting the CatPhan 503 (Elekta’s CBCT phantom) as it shouldn’t be too much work to adapt for the few changes in phantom design.

I was unaware that Elekta was now producing logs. Can you give me some details about which platforms generate them? Do you have a reference manual explaining their structure? In theory I’d support the idea, but I don’t have any logs nor an understanding of them…


Good news: I was able to find some Elekta CBCT scans for the CatPhan 503. I implemented the changes and it wasn’t very much work, although I only have data from 1 machine. More sets would be appreciated and can be passed privately here. Expect official support in v1.2.