Файл: Семинар сынылады he жне spo жйесіндегі омо сарапшылы кеесі.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.11.2023

Просмотров: 606

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Салмақ r(m, n) үміткер мен оның көрші пикселдерінің қатынасын сипаттайтын өлшем болып табылады. Егер салмағы бірдей бірнеше үміткер табылса, олардың кез келгені таңдалады. Енгізу нәтижесінде салмағы ең жоғары үміткердің мәні кері өзгереді. Осылайша, бір блок су таңбасының бір битін қамтиды.
4.26-суретте бастапқы кескіннің үлкейтілген фрагменті және оған 40-биттік сандық су таңбасын енгізгеннен кейін сол суреттің фрагменті көрсетілген.



Күріш. 4.26.Митекин алгоритмі бойынша су таңбасын енгізудің мысалы
Қарастырылған кодтау әдісі сандық су таңбаларын екілік кескіндерге ендіру үшін ең кеңінен қолданылады. Оның негізінде бірнеше модификацияланған алгоритмдер жасалды.
Модификациялардың бірі - бұл әдісті сұр түсті кескіндерге кеңейту. Контейнер кескіні биттік «қабаттардың» жиынтығы болып табылады, олардың әрқайсысы түс тереңдігі 1 бит кескінді білдіреді. Осылайша, бұл алгоритм бір немесе бірнеше таңдалған «қабаттарға» қолданылады. Таңдалған кескін қабаты сәйкес өзгертіледі


  • жоғарыда келтірілген алгоритм. Су таңбасын кірістіру нәтижесі түпнұсқамен бірдей түс тереңдігіндегі кескін болып табылады.


Бұл алгоритмнің кемшілігі кескіннің көрнекі сапасын сақтаудың төмен дәрежесі болып табылады. Біріншіден, бұл жағдайға байланысты
1744-БӨЛІМ



ақпаратты енгізуге арналған lymi блок өлшемдері. Екіншіден,


  • ендіруге арналған блоктарды таңдау, өйткені таңдалған алгоритмге байланысты кірістіру толығымен ақ және толығымен қара блоктарда да орындалуы мүмкін, бұл контейнер кескінінің айтарлықтай бұрмалануына әкеледі. Бұл алгоритмнің модификацияларында осы кемшіліктерді жою әрекеттері жасалды.


B алгоритмін өзгерту. А. Митекина. Жарты тонды кескіндерге су таңбаларын енгізетін бағдарламалық қамтамасыз ету үшін В.А. Митекиннің жұмысында сипатталған алгоритмнің екі модификациясы әзірленді. Екі модификация да енгізілген ақпаратты контейнер кескінінде көрінбейтін етуге бағытталған, яғни. алгоритмді анықтау шабуылдарына қарсы сенімдірек ету үшін.
Егер сіз ақпараттың биттерін суреттің барлық блоктарына қатарға енгізсеңіз, онда ол қатты бұрмаланады және су таңбасының өзі оңай анықталады.
Келесі ұсынылды: К матрицасы кілт ретінде пайдаланылады:




010
Қ= 111.
010
Псевдокодта жазылған өңдеу алгоритмі келесідей көрінеді:
Егер(0<сома (Fмен Қ)<қосынды(K))

Егер(сома (Фмен Қ) мод 2 = b)

F ұстаңызменбүтін;

Әйтпесе, егер(сома (Фмен Қ) мод 2 = 1)
Кездейсоқ аздап таңдаңызмен]j,к= 0, [K]j,к= 1 және өзгертіңіз [Fмен]j,кдейін1; Әйтпесе (сома(FменҚ) = қосынды(K)-1)
Кездейсоқ аздап таңдаңызмен]j,к= 1, [K]j,к= 1 және өзгертіңіз [Fмен]j,кдейін0; Басқа
Кездейсоқ аздап таңдаңызмен]j,к, [K]j,к= 1 және толықтауыш[Fмен]j,к; Басқа

Ешбір деректер F ішіне ендірілмейдіменжәне Фменбүтін сақтайды
4.27-суретте 6х6 ақ-қара кескінге үш бит ақпаратты енгізу мысалы келтірілген.Ф кескіні төрт бірдей 3х3 блокқа бөлінген және ақпарат оларға ретімен енгізілген.

Зертхана №14175



Күріш. 4.27.Ақпаратты енгізу мысалы
кілтті пайдалану.
Ф1: қосынды(Ф1 Қ) = 5 = sum(K) — бұл блокқа деректер ендірілмеген;

Ф2: қосынды(Ф2Қ) = 3 - 1 деректер биті осы блокқа ендірілуі мүмкін, енгізілген бит 0, F'2жоғарыда сипатталған алгоритмге сәйкес кірістіру нәтижесі болып табылады;

Ф3: қосынды(Ф3Қ) = 3 - 1 деректер биті осы блокқа енгізілуі мүмкін, енгізілген бит - 1 = F3мод 2, контейнер блогын өзгерту қажет емес; Ф4: қосынды(Ф4Қ) = 3 - 1 деректер биті осы блокқа енгізілуі мүмкін, енгізілген бит 1, F'4сәйкес ендірудің нәтижесі болып табылады

жоғарыда сипатталған алгоритммен.
Жоғарыда сипатталған алгоритмді пайдаланып, белгілі бір блокқа аздаған ақпаратты енгізу үшін өзгертулер қажет пе, соны анықтау үшін біз Митекин алгоритміне сәйкес әрі қарай әрекет етеміз. Өзгерту үшін битті кездейсоқ таңдаудың орнына, біз үміткерлерге салмақ матрицасын қолдану арқылы ендіру үшін ең қолайлы битті таңдаймыз.


Бұл модификацияның, сондай-ақ бастапқы алгоритмнің кемшілігі сурет-контейнер бөлінген блоктардың шағын өлшемі болып табылады. Оған қоса, ендіру үшін блоктарды таңдау үшін пайдаланылатын перне толығымен ақ блоктарға ғана ендіруді болдырмайды. Егер кескінде қара түстің үлкен аумақтары болса, онда кірістірілген контейнерде толтырылған контейнерде осы жерде ақ пикселдердің сызықтары пайда болады, бұл кескіннің көрінісіне де, су таңбасының шабуылдарды анықтауға беріктігіне де айтарлықтай зиян келтіреді. .


  • жоғарыда аталған кемшіліктерді ескере отырып, басқа алгоритм әзірленді, ол алғашқы екеуінің күрделі модификациясы болып табылады. Біріншіден, онда кескін блоктарға бөлінген жоқ

1764-БӨЛІМ



ki 3 3, ал блоктарда 7 7 пиксель. Екіншіден, біреуі де пайдаланылмайды,


  • блок таңдау алгоритмін қиындататын екі перне, және ең бастысы, толығымен ақ және толығымен қара блоктарға ендіруді болдырмайды. Жиынтықтағы осы екі өзгерістер де енгізілген сандық су таңбасының шабуылдарды анықтауға беріктігін және кескіннің көрнекі сапасын сақтау дәрежесін айтарлықтай арттырады.


Бұл алгоритмнің кемшілігі оның ресурстарды тұтынуында.
Сонымен, бір бит ақпаратты ендіру үшін бізге 7 7 өлшемді блок қажет. Осылайша, бір таңбаны енгізу үшін сегіз блок немесе 49 8 = 392 пиксел қажет. Сонымен қатар, әрбір су таңбасында оның басы мен аяқталуының символдық белгісі бар. Шықты,
тек бір таңбадан тұратын сандық су таңбасын ендіру үшін 24 блок 7 7 қажет, яғни. 1176 пиксельді қамтитын сурет. Және бұл барлық блоктар кірістіру үшін жарамды болады деген болжамға негізделген ең аз (өткізу кілтін тексеру).
Су таңбасын енгізуге арналған бағдарламалық құралдың сипаттамасы.В.А.Митекиннің жоғарыда сипатталған алгоритмінің модификациялары негізінде бір әдістің екі түрлі нұсқасы бойынша су таңбасын енгізуді жүзеге асыратын бірдей интерфейсі бар екі бағдарлама ұсынылған.
Құрылымдар мен алгоритмдердің сипаттамасы.Бағдарламалар .bmp файлдарымен жұмыс істейді. Бұл пішім оның артық болуы және арнайы кіріктірілген функциялардың арқасында Windows операциялық жүйесінің (ОЖ) кез келген нұсқасында онымен жұмыс істеу мүмкіндігіне байланысты таңдалды. Бағдарламалар монохромды кескіндерге сандық су таңбасын ендіруге мүмкіндік береді.
Бағдарламалардың жалпыланған алгоритмі суретте көрсетілген. 4.28. Интерфейстің сипаттамасы. Екі бағдарламаның интерфейсі бірдей. Олармен жұмыс істеу негіздері де ерекшеленбейді. Негізгі айырмашылықтар су таңбасын енгізу принциптерінде жатыр, демек,

демек, кейінірек кірістіру нәтижелерінде көрсетілетін болады. Негізгі мәзірдің құрылымы күріште көрсетілген. 4.29.
Файл мәзірінің элементтері TsVZ енгізу (шығару) үшін кескіндерді ашуға және өзгертілген кескіндерді сақтауға мүмкіндік береді. «Өңдеу» мәзірінің элементтері цифрлық белгіні енгізу және шығару процестерін іске қосады.Олар мәтін енгізу жолының астында орналасқан Жасыру және шығару түймелері арқылы қайталанады. Мәтін жолы пайдаланушы терген ендірілген су таңбасының мәтінін немесе шығарылған белгінің мәтінін қамтиды.

Зертхана №14177




Күріш. 4.28.Сандық су таңбасын енгізетін бағдарламалық жасақтама жұмысының жалпыланған алгоритмі
Бағдарламалық құралды пайдалану бойынша нұсқаулық және жұмыс мысалдары.Жұмыс үшін


  • бағдарламалардың кез келгені ең алдымен қолайлы .bmp файлын ашуы керек. Ол үшін Файл - Ашу мәзірінің тармағын таңдап, файлды ашу диалогтық терезесін ашыңыз.


Таңдалған файл ақ-қара сурет болмаса, пайдаланушыға қате туралы хабар көрсетіледі (4.30-сурет).

1784-БӨЛІМ




Күріш. 4.29.Негізгі мәзір құрылымы



Күріш. 4.30.Ашылып жатқан файлдың қате пішімі туралы хабарлама
Кескінді ашқаннан кейін пайдаланушы су таңбасының шығарылатынын немесе ендірілгенін таңдайды. Қолданбаның мәтіндік жолына ендіру үшін белгі мәтінін енгізу керек (4.31-сурет).





Күріш. 4.31.сандық су таңбасы

Зертхана №14179



Жасыру түймесін басқаннан немесе тиісті мәзір элементін таңдағаннан кейін ендіру процесінің өзі басталады. Егер контейнер кескіні мәтін жолына енгізілген ақпаратты ендіру үшін тым кішкентай болса, қате туралы хабар көрсетіледі (4.32-сурет). Енгізу процесі сәтті болса, өзгертілген кескін экранда көрсетіледі және пайдаланушы оны сақтай алады. Ол үшін менюдің Файл - Сақтау пунктін таңдаңыз.




Күріш. 4.32.Енгізілген су таңбасының ендіруге рұқсат етілген өлшемнен асатыны туралы хабар
Сандық су таңбасын шығарып алу үшін Шығару түймесін басу керек немесе ендіру кезіндегідей сәйкес мәзір элементін таңдау керек. Егер суретте жасырын ақпарат табылмаса, пайдаланушы ол туралы хабарлама алады (4.33-сурет), әйтпесе мәтін жолында су таңбасының мәтіні көрсетіледі (4.34-сурет).