O‘zbekiston respublikasi oliy va o‘rta maxsus ta‘lim vazirligi toshkent moliya instituti


Download 0.83 Mb.
bet13/15
Sana02.05.2023
Hajmi0.83 Mb.
#1420848
1   ...   7   8   9   10   11   12   13   14   15
Bog'liq
kurs ish qullanma

def binary(img):
bImg=[]

for i in range(img.size[0]):
tmp=[]
for j in range(img.size[1]):
t=img.getpixel((i,j))
p=t[0]*0.3+t[1]*0.59+t[2]*0.11
if p>128:
p=1
else:
p=0
tmp.append(p)
bImg.append(tmp)
return bImg

Skletezatsiya bosqichi.
Keyingi qadam skeletizatsiya bo‘lib bu jarayonida biz bir piksel kenglikdagi chiziqlar bilan ikkilik tasvirni no ‘qtali tasvirga keltiramiz
Bu qadamni joriy etish uchun 4 ta usul ko ‘rib chiqildi va ular qo ‘yidagicha:

  1. Andoza (shablon) skeletizatsiyasi (shablonlar to ‘plami 1, 2 to‘plam)

  2. To‘lqin usuli (ko ‘p foydalaniladigan usul)

  3. Zong-Sun algoritmi

  4. SHyepina algoritmi

Biz shablonli usulni tanlanib u ustida ishlar olib borildi.
Barmoq naqshlar 3 * 3 matritsaga to‘g‘ri keladi, bu erda markaziy element tasvirni kesib o‘tishda joriy pikseldir.

Birinchi sakkiz shablon asosiy qismdir. "Shovqin" ni yo‘q qilish uchun pastdan to‘rtta va bu to ‘rtta ham 90, 180 va 270 daraja aylantirilishi mumkin va tasvirning ikkinchi aylanib o‘tish yo‘li bilan qidiriladi.
Bu bosqichda skeletizatsiyalash protsedurasini chaqirish, ro‘yxatlar ro‘yxatiga kirish (ikkilanishdan keyin) uchun def tmpDelete(img) moduli, piksellarni shovqin bo ‘yicha o ‘chirish uchun def delete2(img,w,h) moduli va shablonlarni keltirish uchun bir necha modullar(def check(a), def fringe(a), def deletable2(img,x,y)) ishlab chiqildi. Ushbu bosqichda Python dasturlash tilining numpy, PIL, skimage, OpenCV kutubxonalari bilan ishlandi.
Agar biz shablonga duch kelsak, u holda markaziy piksel oq rangga bo‘yalgan (skeletga tegishli emas). Olib tashlash variantlari saqlanib qolganda, qolgani davom etmoqda.
Berilgan barmoq rasmini tanib olish (raspoznovaniya) va uni ma‘lumot sifatida chiqarish algoritmlari taxlil qilindi. Qo‘yida ushbu algoritmlardan bir nechtasini keltiriladi:
1. Korrelyasion taqqoslash.
Ushbu yondashuv ikkita rasmni piksel-pikselli taqqoslashdan iborat bo‘lib, turli xil siljishlar va burilish burchaklari uchun olingan natijalarga asoslanib, tasodif bo‘yicha qarorlar qabul qilinadi. (zamonaviy sharoitda, murakkabligi yuqori bo‘lganligi sababli ishlatilmaydi).
2. Namunalarni taqqoslash.
Kerakli aniqlikka qarab, bosib chiqarish surati joylarga bo‘linadi. Bundan tashqari, har bir mintaqadagi holat sinus to‘lqini bilan tavsiflanadi, parametrlari:

  • boshlang ‘ich o‘zgarishlar siljishi;

  • to‘lqin uzunligi;

  • tarqatish yo‘nalishi.

Ushbu algoritmlar sinxronlashda yuqori aniqlik talab etilmaydi.
3. maxsus nuqtalar bo‘yicha taqqoslash.
Bu yerda hamma unchalik murakkab emas.. Agar 8 nuqtadan iborat qo ‘shni hududda bitta qora bo‘lsa, demak, bu oxirgi nuqta. Agar ularning ikkitasi bo ‘lsa, unda bu faqat chiziqning nuqtasi. Nzqta uchta bo‘lsa demak bu shoxlanish bo‘ladi. Biz dasturimizda uchunchi taqqoslashni ishlatdik.
Maxsus nuqtalar bo‘yicha taqqaslash qo‘yidagi modullar bilan bajarildi.
def checkThisPoint(img, x, y): #atrofdagi qora nuqtalarni sanash moduli
c=0
for i in range(x-1,x+2):
for j in range(y-1,y+2):
if img[i][j]==0:
c+=1
return c-1
def findCheckPoint(img): #tugallanuvchi va shoxlanish nuqtalarni shakillantirish moduli
x=len(img)
y=len(img[0])
branchPoint=[]
endPoint=[]
for i in range(x):
for j in range(y):
if img[i][j]==0:
t=checkThisPoint(img, i, j)
if t==1:
endPoint.append((i,j))
if t==3:
branchPoint.append((i,j))
return (branchPoint, endPoint)

Tasvirning vektoratsiyasi skeletlangan tasvirni to ‘g ‘ri chiziqlar bilan bog ‘langan yakka nuqtalar to ‘plamiga aylantiradi. Shunday qilib, ortiqcha maxsus bo ‘lmagan ma ‘lumotlar o ‘chiriladi. Algoritm parametrlari yaqinlashuvning aniqligini oshiradi.
S kanerdan Olingan barmoq faylga saqlanadi. Faylni dasturga yuklaydi bunda faylni yuklash oynasi paydo bo‘ladi (3.1. rasm).

1. rasm. Fayllarni yuklash oynasi.


D astur tasvirni kul rang shkalaga o ‘tkazilib undan keyin benarizatsiya qilinadi (3.2. rasm).

2. rasm. Benarizatsiya qilish


3 rasm. Natija.


Benarizatsiya qilingandan keyin skletizatsiya moduliga yuboriladi va skletizatsiya qilinadi. Bundan keyin vektorizatsiya qilinadi va natija olinadi)
Dastur Python dasturlash tilida ishlab chiqilgan bo‘lib numpy, PIL(Pillow), skimage xamda tkinter kutubxonalaridan foydalanildi.
Olingan natija faqat taqqoslash qildindi, lekin olingan natijani taxlil qilinmadi. Keyingi bosqichda natijalar taxlil qilinib istiqbolli sportchilarni tanlab olish moduli ishlab chiqiladi.
XULOSA
Hozir Internet nafaqat behisob hajmdagi axborotga ega bo ‘lgan global kompyuter tarmog ‘i hisoblanishi bilan birga behisob odamlar uchun prinsipial yangi muloqot qilish muxitiga aylanib bormoqda.
Zamonaviy axborot-kommunikasiya texnologiyalari sermehnatlik darajasini kamaytirgan holda mavjud muammolarni hal etish uchun keng imkoniyatlar yaratib bermokda. Shuning uchun ham axborot-kommunikasiyalar texnologiyalarini sog ‘liqni saqlash sohasining barcha tarmoqlarida samarali qo ‘llash mamlakatni texnologik va iqtisodiy jihatdan rivojlantirishni ifodalovchi ko ‘rsatkich bo ‘lib xizmat qilmoqda.
O ‘zbekiston Respublikasi Prezidentining 2012 yil 21 martdagi “Zamonaviy axborot-kommunikatsiya texnologiyalarini yanada joriy etish va rivojlantirish chora-tadbirlari to ‘g ‘risida”gi PQ-1730-son[2], 2013 yil 27 iyundagi “O‘zbekiston Respublikasi milliy axborot kommunikatsiya tizimlarini rivojlantirish bo‘yicha qo‘shimcha chora-tadbirlari to‘g‘risidagi PQ-1989-son[3], 2014 yil 3 apreldagi “Iqtisodiyotning real sektorlarida axborot-kommunikatsiya texnologiyalarini joriy qilishni yanada takomillashtirish chora-tadbirlari to‘g‘risida”gi PQ-2158-son [4] qarorlariga muvofiq, davlat va xo ‘jalik boshqaruvi, mahalliy davlat hokimiyati, tashkilot, muassasa va korxonalarda axborot kommunikatsiya texnologiyalarinijoriy qilish va undan samarali foydalanish maqsadga muofiq bo‘ladi.
Kurs ishda asosan quyidagi masalalar qaraldi:

  • Sog ‘liqni saqlash sohasida mavjud tizimlar atroflicha tadqiq qilindi;

  • Veb texnologiyalarga oid standartlar, texnologiyalar va prinsiplar o ‘rganildi;

  • Poliklinikada On-Line ro‘yhatga olish tizimi zaruriy ma ‘lumotlar bazalari yaratildi va shakllantirildi;

  • Poliklinikada On-Line ro‘yhatga olish tizimi yadrosi yaratildi;

  • Poliklinikada On-Line ro‘yhatga olish tizimining asosiy modul va veb-interfeyslari yaratildi;

  • Poliklinikada On-Line ro‘yhatga olish tizimi dasturiy ta ‘minoti ishlab chiqildi;

  • Tizimning umumiy xavfsizligi ta ‘minlandi;

Tizim axborot xavfsizligi ta ‘minlanib u qo ‘yidagi talablariga javob beradi.

  • Kiruvchi va chiquvchi ma ‘lumotlarni yadro darajasida;

  • filtrlash va nazort qilish;

  • SQL injection (MB uchun) va XSS (sahifalar uchun);

  • hujumlaridan himoyalanish;

  • veb saytning yaxlitligini saqlash uchun back-up funksiyasi joriy qilingan;

  • Spamdan himoyalanish uchun maxsus captcha texnologiyasi qo‘llanilgan;

  • IP adreslar bo‘yicha foydalanuvchilarning tizimga kirishlarini nazorat qilish.

Veb sayt dasturiy ta‘minoti tuzilgan bo‘lib, oldinga qo‘yilgan masalani optimal bazasi yaratilgan. Foydalanuvchi uchun keng imkoniyatli qulayli veb interfeyslar ishlangan.
Mazkur tizimni yaratishda bir qator zamonaviy, ochiq kodli (open source) dasturlash texnologiyalaridan foydalanilgan.
Asosiy dasturlash tili – PHP
MB – MySQL, PostgreSQL
veb server – Apache
Tillar va texnologiyalar – HTML, CSS, XML, jQuery, yii2 Framework,Adobe Flash



Download 0.83 Mb.

Do'stlaringiz bilan baham:
1   ...   7   8   9   10   11   12   13   14   15




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling