آشنایی با فیلتر ها و لبه ها در پردازش تصاویر پزشکی با فرمت DICOM
مجموعه ای از پیکسل های صفحه نمایش دهنده کامپیوتر در مجاورت هم سطحی را تشکیل می دهند که تصاویر در این سطح قرار می گیرند و پردازش رنگ ها و روشنایی هر پیکسل در این صفحه رابطه مستقیم با پیکسل های مجاور آن دارد. جهت بررسی این پروسه باید در نظر داشت که هر پیکسل با پیکسل های مجاور خود در مرحله اول یک ماتریس 3×3 را می سازد و پیکسل مورد نظر در مرکز این ماتریس قرار میگیرد. می توان این پیکسل را با پیکسل های ماتریس 5×5 یا 7×7 و ابعاد بالاتر مورد پردازش قرار داد.
تعاریف اولیه جهت شناخت فیلترها1- فیلترها با استفاده از یک سری دستورالعمل نرم افزاری جهت تغییرات بر روی پیکسل ها طراحی شده اند.
2- عملکرد فیلترها جهت پردازش تصاویر دیجیتال پزشکی با تغییرات رنگ و روشنایی پیکسل ها همراه است.
3- فیلترها نقش اصلاح شکل ظاهری تصاویر دیجیتال پزشکی را جهت پردازش به عهده دارند.
آشنایی با دوفیلتر فرکانسی1- فیلترهای پائین گذر در حالت کلی باعث مات شدن پیکسل ها می شوند.
2- فیلترهای بالا گذر جهت تیزکردن لبه ها و سایر جزئیات پیکسل ها استفاده می شوند.

نمونه فیلترهای پائین گذر
در
حالت کلی باعث مات شدن پیکسل ها می شوند. فیلتر های نرم کننده برای مات
کردن و کاهش نویز استفاده می شوند مانند: Blur Filter ، Smoothing
Filter و غیره ...
خواص فیلترهای بالا گذر
فیلترهای بالا گذر در تصاویر دیجیتال پزشکی از جنس خاکستری کاربرد زیادی دارد و جهت تشخیص لبه ها و حذف اطلاعات فرکانس پایین موثر هستند.
Apply a high pass filter
Build the kernel
VariantToArray Array
Array(-1 / 12, -1 / 12, -1 / 12
Array(-1 / 12, 20 / 12, -1 / 12)
Array(-1 / 12, -1 / 12, -1 / 12)
TheKernel
آشنایی با فیلتر Embossفیلتر Emboss پیکسل ها را به طیفی از رنگ خاکستری و برجسته تبدیل می کند.

VariantToArray Array
( Array(1, 0, 0
(Array(0, 0, 0
(Array(0, 0, -1
TheKernel
حاشیه یا لبه ها در پردازش تصاویر دیجیتال پزشکی (EDGE)1- الگوریتم زیر لبه ها را با استفاده از General Edge مشخص می کند، این الگوریتم لبه ها را با استفاده از تمایز رنگ بین پیکسل های مجاور هم (X,Y)و (X+1,Y+1) مشخص می سازد.

Set the pixel color values.
For Y = 0 To pictureOriginal.
For X = 0 To pictureOriginal.
With pixels(X, Y)
.rgbRed = Abs(CInt(.rgbRed) - pixels(X + 1, Y + 1).rgbRed)
.rgbGreen = Abs(CInt(.rgbGreen) - pixels(X + 1, Y + 1).rgbGreen)
.rgbBlue = Abs(CInt(.rgbBlue) - pixels(X + 1, Y + 1).rgbBlue)
End With
Next X
Next Y
دراین
الگوریتم مشاهده می شود که پیکسل در مکان ((X,Y و پیکسل مجاور
آن(X+1,Y+1) در صورتی که دارای رنگ برابر با هم باشند رنگ سیاه و در
صورتی که رنگ آن ها متفاوت باشند، مکمل آن رنگ را به جای رنگ آن
پیکسل قرار می دهد.2- SubEdge الگوریتم زیر لبه ها را با استفاده از تمایز رنگ بین پیکسل(X,Y) و تمام پیکسل های مجاور آن بیان می کند.

LBound(pixels, 1) To UBound(pixels, 1)
LBound(pixels, 2) To UBound(pixels, 2)
Set the pixel color values.
For Y = 1 To pictureOriginal.
For X = 1 To pictureOriginal.
With pixels(X, Y)
r = 0
g = 0
b = 0
For i = -1 To 1
For j = -1 To 1
r = r + Abs(CInt(.rgbRed) - pixels(X + i, Y + j).rgbRed)
g = g + Abs(CInt(.rgbGreen) - pixels(X + i, Y + j).rgbGreen)
b = b + Abs(CInt(.rgbBlue) - pixels(X + i, Y + j).rgbBlue)
Next X
Next Y
در این الگوریتم هر پیکسل با چهار پیکسل مجاور به شرح زیر بررسی می شود.
پیکسل های ردیف افقی که با پیکسل (X, Y) مقایسه می شوند، عبارتند از: (X+1) و (X-1 ) پیکسل های در ردیف عمودی که با پیکسل , Y) (X مقایسه می شوند، عبارتند از(Y+1) : و (Y-1) آنچه از این اختلاف پیکسل ها نتیجه می شود در صورتیکه این اختلاف برابر صفر شود، در تصویر رنگ سیاه را خواهیم داشت و در غیر آن اختلاف رنگ پیکسل(X, Y) با چهار پیکسل مجاور آن رنگ تکمیلی را می دهد، که جهت پردازش لبه ها بسیار با ارزش است.
نویسنده: مهندس کاوه یوسفی
منبع: ماهنامه مهندسی پزشکی
آدرس جدید ما xrays.ir