Inżynier i Fizyk Medyczny 3/2013 vol. 2
131
artykuł
/
article
oprogramowanie
/
software
wszystkich obrazów, także tych wczytywanych później (tzw. ka-
libracja globalna). W
efekcie tak przeprowadzonej kalibracji ob-
raz nie ulega modyfikacji, ale wartości pikseli są wyświetlane
z
zastosowaniem dopasowanej funkcji kalibracyjnej – wyrażane
są w
jednostkach dawki (np. mGy). Dotyczy to zarówno odczyty-
wania wartości pojedynczych pikseli, jak i
np. średniej wartości
pikseli w wybranym ROI lub profilu wartości pikseli wzdłuż wy-
branej linii. Drugą metodą na przeprowadzenie linearyzacji, któ-
ra także pozwala na dopasowanie funkcji do zależności między
wartością pikseli a
dawką, jest zastosowanie polecenia „
Curve
Fitter
”. W
tym przypadku funkcja kalibracyjna nie jest stosowa-
na do analizowanego aktualnie obrazu, natomiast jest tworzona
jego kopia, w
której wartości pikseli są odpowiednio przeliczo-
ne. Na rysunku 3 przedstawiono wykorzystanie polecenia „
Cu-
rve Fitter
” do wyznaczania funkcji STP oraz funkcji odwrotnej dla
jednego z
systemów CR stosowanych w
rentgenodiagnostyce.
Rozszerzanie możliwości programu
ImageJ
Oprócz wielu wbudowanych funkcji i
możliwości korzystania
z
makr, twórca programu przewidział także możliwość korzy-
stania z
rozszerzeń (wtyczek
plug-in
). Na stronie internetowej
programu
ImageJ
dostępnych jest kilkaset różnych rozszerzeń,
w
większości stworzonych przez użytkowników programu. Do
przygotowania własnych rozszerzeń potrzebne są przynajmniej
podstawowe umiejętności programowania w
języku Java, jed-
nak nie są konieczne żadne dodatkowe narzędzia programi-
styczne. Interfejs programu
ImageJ
umożliwia tworzenie kodu
rozszerzenia (we wbudowanym edytorze tekstu) oraz kompila-
cję kodu i
uruchamianie skompilowanego rozszerzenia. Dużym
ułatwieniem jest możliwość korzystania z
kodu już istniejących
rozszerzeń oraz z dokumentacji API (
Application Programming In-
terface
) – interfejsu programowania aplikacji.
Na rysunkach 4 i
5 przedstawiono funkcjonowanie dwóch roz-
szerzeń napisanych na własne potrzeby przez autora niniejszego
artykułu, wykorzystywanych podczas wyznaczania wielkości ogni-
ska lampy rentgenowskiej oraz obliczania wartości funkcji przeno-
szenia modulacji MTF. Jednym z
kroków niezbędnych do wyzna-
czenia wielkości ogniska lampy rentgenowskiej jest określenie
szerokości profilu ekspozycji na poziomie 15% maksymalnej eks-
pozycji [9]. Na rysunku 4 zaprezentowano działanie rozszerzenia,
które automatycznie przeprowadza niezbędną analizę szerokości
profilu wzdłuż linii zaznaczonej na obrazie przez użytkownika.
Z
kolei wyznaczenie wartości MTF na podstawie obrazu krawędzi
wymaga wykonania serii obliczeń i
operacji na obrazach [10]. Na
rysunku 5 przedstawiono obraz krawędzi, wykres już obliczonej
funkcji przenoszenia modulacji MTF oraz kilka etapów pośrednich
jej wyznaczania. Widoczne sąmiędzy innymi okna przedstawiające
wycięcie wybranego obszaru obrazu, obrócenie go o
90° i
zasto-
sowanie filtru wykrywającego krawędź. Dzięki wykorzystaniu go-
towych bibliotek programu
ImageJ
, kod programu odpowiadający
każdej z
tych operacji składa się z
jednego polecenia.
Rys. 4
Wyznaczanie szerokości profilu wzdłuż zaznaczonej linii za pomocą rozszerze-
nia stworzonego przez użytkownika
Rys. 3
Zastosowanie funkcji „Curve Fitter” do linearyzacji obrazów. Po lewej: wy-
znaczanie funkcji STP (Signal Transfer Property), czyli zależności wartości pikseli od
kermy w powietrzu. Po prawej: wyznaczanie funkcji odwrotnej do STP, niezbędnej
do linearyzacji obrazu
1...,9,10,11,12,13,14,15,16,17,18 20,21,22,23,24,25,26,27,28,29,...52