75
7.4-
rasm. Shovqin qo‘shilgan tasvirni medianali filtr yordamida tozalash natijasi.
Tasvirlarni turli shovqinlardan tozalash turli sohalarda(meditsina, geologiya, qishloq
xo‘jaligi ekin maydonlari tasvirlarini, tasvirlar va sahnalardagi obyektlarni tanish va
kuzatish va x.k.) tasvirlar va sahnalardan ma’lumot olish jarayonlarida keng
qo‘llaniladi. Bunda tasvirlarga turli tipdagi shovqinlar qo‘shish va ularni tozalashda
Matl
ab muhitining mos funksiyalaridan o‘rinli foydalanish katta ahamiyatga ega.
Topshiriqlar.
Ma’lumotlar bazasidan variantga ko‘ra tasvir oling va olingan tasvirga turli tipdagi
xalaqitlar qo‘shish va ulardan tasvirni tozalash jarayonlarini modellashtiring
.
Nazorat savollari:
1.Tasvirlarga qo‘shiladigan xalaqitlar turlari.
2. IPT paketinig tasvirlarni turli tipdagi xalaqitlar qo‘shish funksiyalari. 3. Tasvirga
“Tuz va garmdori” tipidagi xalaqit qo‘shish natijasini medianali filtrlash
4.Tasvirlarni xal
aqitlardan tozalashning qo‘llanilish sohalari.
8-MAVZU. TASVIRLARNI FILTRLASH. TASVIRLARNI SILLIQLASH.
SILLIQLASH TURLARIDAN FOYDALANISH.
Reja:
1.
Tasvirlarni qayta tiklash.
2.
Tasvirlarni buzish/qayta tiklash jarayoni modeli.
3.
Tasvirlarni filtrlash. tasvirlarni silliqlash.
TASVIRLARNI QAYTA TIKLASH
Tasvirlarni shakllantirish jarayonida vujudga keladigan tasvir sifati buzilishini
bartaraf etish tasvirlarga ishlov berishning asosiy vazifalaridan biri hisoblanadi.
Shu bilan birga tasvirlarni yoz
ish jarayonida mavjud bo‘lgan ixtiyoriy real fizik
qurilmalardagi shovqin ham tasvir sifatini buzadi.
MATLAB matematik paketida mavjud bo‘lgan imagine toolbox yordamida ixtiyoriy
76
qiyinlik darajasida bo‘lgan tasvirlar bilan ishlash mumkin. Bunda tasvirni t
ahlil qilish,
masshtablash, qayta tiklash, buzish va tasvir sifatini yaxshilash kabi jarayonlarni
amalga oshirish mumkin. Tasvirlar bilan ishlashda quyidagi komandalardan
foydalaniladi:
•
histeq
–
tasvir gistogrammasini yaratish;;
•
imhist
–
tasvir gistogram
masini ko‘rsatish;
imsharpen
–
tasvir ravshanligini
oshirish.
8.1.Tasvirlarni buzish/qayta tiklash jarayoni modeli
.
Quyida keltirilgan 7.1
–
rasmda tasvirlarni buzish/qayta tiklash jarayonining
modeli tasvirlangan:
Bu erda
:
N
–
shovqin qo‘shish
operatori,
f(x, y)
–
kiruvchi tasvir
;
g(x, y)
–
shovqin qo‘shilgan tasvir;
ɳ(x, y)
–
shovqin
Buzish jarayoni modeli bir nechta shovqin qo‘shish operatorlari H kiruvchi tasvir
f(x,y) ga tasir o‘tkazishini qo‘zda tutadi. Bunda additiv shovqin ta’sir ettirilganda
paydo bo‘lgan shovqin qo‘shilgan tasvir g(x,y) hosil bo‘ladi. Qayta tiklash vazifasi
tasvirlarning o‘zaro yaqinlashishini ta’minlashdan iborat bo‘ladi. Bunda f(x,y) ya’ni
chiquvchi tasvir kiruvchi tasvirga juda ham yaqinlashishiga erishish_lozim.
Shovqin qo‘shilgan tasvir fazoviy qismda quyidagicha keltirilishi mumkin:
g(x,y)= h(x,y)* f(x,y)+
η
(x, y)
h(x, y)
–
funksiya bo‘lib, fazoviy qismda halaqit qo‘shish operatori
hisoblanadi.
8.2.MATLAB DASTURLASH MUHITI YORDAMIDA TASVIRLARNI
QAYTA TIKLASH JARAYONINI MODELLASHTIRISH
Matlab tizimida tasvirlarni ba’zi bir shovqin ta’sirida buzish jar
ayoni amalga
8
.1
–
rasm
.
Tasvirlarni
buzish
/
qayta
tiklash
jarayoni
modeli
.
Shovqin (xalaqit)
qo’shish operatori
N
Qayta tiklash
operatori
(
filtr
)
+
f(x,
y)
g(x,
y)
f
(
x, y
)
Shovqin
ɳ
)
x, y
(
77
oshiriladi, bunda quyidagi imnoise funksiyasidan foydalaniladi:
g= imnoise (f, ‘type’, parametrs)
Bu erda:
f
–
haqiqiy tasvir;
g
–
shovqin qo‘shilgan
tasvir;
type
–
shovqin tipi;
parametrs
–
foydalanilgan shovqin parametri.
Avval, imnoise
funksiyasi tasvirni [0,1] oraliqda shovqin ta’sir ettirilgan holda double
sinfiga o‘zgartirib oladi, shundan so‘ng tasvir yana boshlang‘ich holatiga qaytariladi.
Bu esa shovqin parametrini sozlashni nazarda tutadi. Imnoise funksiyasidan so‘ralgan
type ya’ni tipi o‘rniga quyidagi shovqin turlaridan foydlanaish mumkin:
8.1-jadval. Shovqin turi va nomlari.
Shovqin turi
Shovqin nomi
‘gaussian’
Doimiy
O‘rtachalik va o‘zgaruvchan dispersiyaga ega
Gauss shovqini
‘localvar’
O‘rtachalik va o‘zgaruvchan disp
ersiyaga ega Gauss
shovqini
‘poisson’
Puasson shovqini
‘salt&pepper’
“Tuz va muruch” shovqini
‘speckle’
Ayirish ya’ni multiplikativ shovqin
1-misol:
Quyida MATLAB dasturiy vositasi yordamida tasvirga shovqin
qo‘shilishiga misol keltiramiz. Bunda gos.jpg formatdagi tasvirga shovqin qo‘shish
jarayonini ko‘rishimiz mumkin.
>>I=imread(‘gos.jpg’);
>>J=imnoise(‘salt&pepper’,0.03);
>>figure, imshow(I)
>>figure, imshow(J)
Natija
:
8.2-rasm. T
asvirga shovqin qo‘shish jarayonini
78
Shov
qin parametrlarini baholash uchun n gacha bo‘lgan o‘rtacha va statistik vaqtni
hisobga oluvchi statemoments funksiyasidan foydalaniladi.
[v, unv]=statmoments(p, n)
Bu erda: p
–
tasvir gistogrammasi vektori; n
–
statistik vaqt tartibi; v
–
normallashtirilgan vaqtning chiqish vektori; unv
–
kiruvchi ma’lumot oralig‘idagi
chiquvchi vektor vaqti.
SHu bilan birga tasvirlarni qayta tiklash uchun fspesial operatoridan ham
foydalaniladi. Ushbu operatorning umumiy ko‘rinishi quyidagicha:
fspecial(‘motion’,
LEN, THETA)
Bu yerda: LEN
–
syomka vaqtidagi pikselning ko‘chish kattaligi; THETA –
kamera harakatining burchak gradusi.
Misol
–
2:
i=imread(‘cameraman.tif’); imshow(i); title(‘Kiruvchi tasvir’);
figure
LEN=21;
THETA=0;
PSD=fpecial(‘motion’, LEN, THETA); blurred=imfilter(i, PSD, ‘conv’, ‘circular’);
imshow(blurred); title(‘Shovqin berilgan tasvir’); wnr1=deconvwnr(blurred, PSD);
figure imshow(wnr1);
title(‘Tiklangan tasvir’);
Natija
:
79
MATLAB muhitida tasvirlarni
Viner
filtrlash uchun
deconvwnr
funksiyasidan
foydalaniladi va quyidagi ko‘rinishda bo‘ladi:
fr=deconvwnr(g, PSF)
Bu erda:
fr
–
qayta tiklangan tasvir;
g
–
buzilgan tasvir;
PSF
–
buzuvchi operator
(funksiya).
3-misol :
I
= imread('peppers.png');
J=rgb2gray(I);
J
= J(60+[1:256],222+[1:256],:); figure; imshow(J);
title('Original Image');
LEN = 31;
THETA = 11;
PSF = fspecial('motion',LEN,THETA);
Blurred = imfilter(J,PSF,'circular','conv'); figure; imshow(Blurred);
title('Blurred Image'); wnr1 = deconvwnr(Blurred,PSF); figure; imshow(wnr1);
title('Restored, True PSF');
Natija
:
8.3 - rasm. T
asvirga
yumshtish va tiniqlashtirish
jarayon
lari
80
Signal/shovqin nolga tenglashtirilgan holatda bo‘lsa, viner filtrlash invers filtrlashga
o‘zgartiriladi.
Tasvirlarni qayta tiklash uchun odatda, ikki turdagi filtrlashdan foydalaniladi. Bular:
1.
Inverslangan filtrlash;
2.
Viner filtrlash;
3.
Gomomorfli filtrlash.
8.3.Tasvirlarni filtrlashning usullari
Agar tasvirni buzishda foydalanilgan buzuvchi funksiya metodi ma’lum yoki
aniql
angan bo‘lsa, u holda tasvirlarni qayta tiklashni sezilarli darajada soddalashtirish
mumkin. Inverslangan filtrlash tasvirlarni tiklashda foydalaniladigan eng sodda usul
hisoblanadi.
mavjud statsionar tasodifiy signallar, chastota qismidagi qayta tiklovchi tizimlarning
impulsli javobga o‘zgartirilishi quyidagi ifoda orqali aniqlanadi
:
8.4 - rasm. T
asvirga
shovqin qo’shish va tozalash
jarayon
lari
–
tasodifiy jarayonning quvvat spektri ;
81
Bu yerda:
R(u,v)
–
qayta tiklanuvchi tizimlarning chastotaviy
funksiyasi;
–
g va f jarayon quvvatining kross-spektri.
U holda qayta tiklanuvchi tizimlarning chastotaviy funksiyasi quyidagicha
ifodalanadi:
Shovqin hisobga olingandan so‘ng chastotaviy funksiya quyidagi qo‘rinishda bo‘ladi:
Bu erda:
H(u,v)
–
chiziqli zarar yetkazuvchi tizimlarning chastotaviy funksiyasi;
–
boshlang‘ich (isxodnogo) tasvir va shovqinning quvvat
spektrilari.
Bunday chastotaviy funksiya tizimi
Viner filtri
deb ataladi. Bu kabi nolga teng
boshlang‘ich tasvir va shovqin quvvati spektri bilan bog‘liq bo‘lgan tizimlar
Invers
filtri
deb ataladi.
Yer atmosferasi orqali kosmik obyektlarni tasvirga olishda atmosferaning turbulentligi
sababli tasvirlarni “o‘pirilishi” sodir bo‘ladi. Ushbu effektning yaqinligini chastotaviy
xarakteristikasiga tegishli bo‘l
gan impulsli javob berish bilan chiziqli tizimlarning
o‘zaro aloqasi orqali ko‘rsatish mumkin:
.
–
ravshanlilik koeffitsienti.
4-misol:
Berilgan o‘rmon tasvirini modellashtiring va uni Viner filtri yordamida qayta
tiklang.
[X,map] = imread('forest.tif'); I = im2double(ind2gray(X,map)); figure,imshow(I)
title('original image')
[f11,f22] = freqspace([15 15],'meshgrid'); a = 1;
H = exp(-a^2.*(f11.^2+f22.^2)); h = fsamp2(f11,f22,H,[5,5]); Id =
conv2(I,h,'same'); figure,imshow(Id) title('defect image')
k = 1e-4;
[HT,f1,f2] = freqz2(h,[5 5]); HV = conj(HT)./(abs(HT).^2+k); hv = fsamp2(HV); Ir
= conv2(Id,hv,'same'); figure,imshow(Ir) title('restore image')
,
,
82
8.6-rasm. Viner filtri yordamida qayta tiklangan tasvir
IPT funksiya paketidagi bajarilayotgan viner filtrlash jarayoni deconvwnr deb ataladi.
Ir=deconvwnr (Id, h, k)
Natija :
8.5 - rasm. Viner filtri yordamida tasvirni qayta tikla sh jrayonlari
83
Bu yerda
Id
–
zararlangan tasvir;
h
–
chiziqli tizimlarning impulsli javobi;
k
parametri
esa dastlabki tasvir va shovqinning quvvat spektrilari munosabatini belgilaydi.
Shovqin/signal o‘zaro bog‘liqligi k=0 deb belgilangan (bunda viner filtrlash shakli
inversli filtrlash bilan mos tushadi).
1. NAZORAT SAVOLLARI
1.
Tasvirni shakllantirishda uning
sifatiga zarar yetishiga nima sabab bo‘ladi?
2.
Ushbu laboratoriya ishida “o‘pirilgan” tasvirlarni modellash va uni qayta tiklash
uchun qanday funksiyalardan foydalanilgan?
3.
Viner va gomomorfli filtrlash qanday prinsiplarga asoslangan?
4.
Shovqin turlari va un
i tasvirlarga qo‘llashga misollar keltiring.
5.
Tasvirlarni buzish/qayta tiklash jarayoni modelini qo‘llanishini tushuntiring.
6.
Tasvirlarda inverslangan filtrlash usuli qanday qo‘llaniladi?
7.
Tasvirlarda Viner filtrlashni misollar yordamida tushuntirib bering.
9-MAVZU.TASVIRLARDA SHAKL ALMASHTIRISH. FURENING BIR VA
IKKI O’LCHOVLI DISKRET SHAKL ALMASHTIRISHI.
TASVIRLARNI
OPEN CV MUHITIDA YUKLASH VA VIZUALLASHTIRISH
Reja:
1.
Tasvirlarni open cv muhitida yuklash
2.
Tasvirlarda shakl almashtirish
9.1.Tasvirlarni Open CV muhitida yuklash
O’quv qo’llanmaning ushu qismida biz biror faylni loyiha papkasidan qanday o'qishni
va namoyish qilishni Open CV yordamida o'rganamiz. Birinchi shart: Open CV Build
muhitini kompyuteringizga o’rnatgan bo’lishingiz kerak boladi. Bu
nda Visual Studio
2013 yoki 2015 dasturlash muhitini Open CV
Kompyuterni ko’rish kutubhonasi bilan bog’langan bo’lishi lozim.
Dostları ilə paylaş: |