Мазмұны:

GET1033 Python кодталған кескін процессоры: 5 қадам
GET1033 Python кодталған кескін процессоры: 5 қадам

Бейне: GET1033 Python кодталған кескін процессоры: 5 қадам

Бейне: GET1033 Python кодталған кескін процессоры: 5 қадам
Бейне: Optical Character Recognition (OCR) with Meta's Nougat! 2024, Қараша
Anonim
GET1033 Python кодталған кескін процессоры
GET1033 Python кодталған кескін процессоры

Бұл жоба менің модуль үшін GET1033 Exploring Computational Media Literacy -ді питонмен кодталған сурет процессорымды құру туралы. Алдымен пайдаланушы өзінің фотосуретін енгізуі керек, содан кейін қалаған сүзгілерді таңдау керек. Мен 9 сүзгіні құрдым, олар: кіретін кескінді көрсету, айна, жолақтың артына қою, мөлдір жолақтың артына қою, дөңгелек сурет, бұлыңғырлық, айналдыру, түсін өзгерту және Photoshop. Оның біреуін таңдағаннан кейін, шығыс кескін әсер етеді. Суретте көрсетілгендей, бұл суреттегі жасыл түсті пикселдерді анықтайтын және оларды қызғылт түске түрлендіретін түс өзгертуге арналған сүзгі.

1 -қадам: Жасалу процесі

Оны жасау процесі
Оны жасау процесі

1 -қадам: Python -ды осы жерден жүктеңіз!

2 -қадам: кодтаңыз!

Ең алдымен, мен кодта қолдануға болатын алдын ала кодталған функциясы бар бірнеше пакетті импорттадым. Мен импорттаған пакеттер - Scipy, Matplot және Numpy.

Scipy үшін мен әр түрлі процедураларды (MISC) және көпөлшемді кескінді өңдеуді (NDIMAGE) импорттадым. MISC кескінді оқуға және сақтауға арналған, ал NDIMAGE - гаусс сүзгісін орындау және айналдыру.

Matplotlib үшін бұл MATLAB интерфейсін қамтамасыз ететін Python графигін салуға арналған кітапхана.

Numpy үшін бұл үлкен, көп өлшемді массивтер мен матрицаларды қолдайтын кітапхана. Numpy маңызды, себебі ол маған массивті қосу немесе көбейту кезінде суреттердің қызыл, жасыл және көк жиектерін (RGB) тиімді өңдеуге мүмкіндік береді. Мысалы, A = [0, 1, 2] және Numpy қатысуымен A*2 = [0, 1, 2, 0, 1, 2] алудың орнына A*2 = [0, 2, 4]..

Мен Түсті өзгерту фильтрінде жұмыс істеп жүргенде, қыздың жасыл шаштарын қызғылт түске айналдыруға тырысамын. Сонымен, мен суреттегі жасыл түсті пикселдерді анықтап, оларды көбейту (2, 0,2, 0,8) болды. Осылайша мен нақты жасыл шаштың орнына қызғылт шашты қызды аламын.

Photoshop -қа келер болсақ, мен Avengers суретіндегі жасыл фонды NUS суретімен алмастыруға тырысамын. Сонымен, мен барлық жасыл пикселдерге 0 -ді көбейтіп, содан кейін жасыл пиксельдерге NUS суретінің пикселдерін қосу болды. Бұл маған NUS -те Авенгерлердің суретін береді.

Мен GitHub -да кодты тіркедім және оны мына жерден жүктей аласыз!

2 -қадам: Бұл қалай жұмыс істейді?

Ол қалай жұмыс істейді?
Ол қалай жұмыс істейді?

Блок -схема бүкіл кодтың қалай жұмыс істейтінін көрсету үшін бекітілген!

1. Біріншіден, пайдаланушыға таңдаулы суретті енгізу ұсынылады. 2. Содан кейін ол пайдаланушы таңдай алатын сүзгілер тізімін көрсетеді. 3. Егер пайдаланушы '1' -ден '9' -ға дейін енгізсе, онда сурет әр сүзгіге сәйкес өңделеді және шығарылады. Егер пайдаланушы 'R' енгізсе, онда бағдарлама толығымен қалпына келтіріледі және пайдаланушыдан суретті қайта жүктеу сұралады. Егер пайдаланушы 'Q' енгізсе, онда бағдарлама циклден шығады.

3 -қадам: Бұл не істейді?

Бұл жобада мен жасаған 9 сүзгі бар

1. Кіріс суретін көрсету - Жүктелген суретті көрсету үшін

2. Айна бейнесі - объектінің шағылысқан қайталануы, бірақ бағытта кері бұрылады

3. Артқы жолақты қою - ені мен аралығы 50 пиксельге тең қара тік жолақтарды енгізу.

4. Мөлдір жолақты артқа қою - ені мен аралығы 50 пиксельге тең мөлдір тік жолақтарды енгізу

5. Дөңгелек сурет - Суреттің ортасында шеңбер құру

6. Бұлыңғырлау - суретті бұлыңғыр ету үшін

7. Айналдыру - кескінді 45 градусқа бұру үшін

8. Түсті өзгерту - Жасыл түсті қызғылт түске өзгерту үшін

9. Photoshop - Суреттің бір бөлігін басқа суретпен өзгерту үшін

4 -қадам: Мен неге қол жеткіздім?

Бұрын мені Instagram мен Snapchat суреттердің сүзгілерін қалай қызықтыратыны қызықтырды. Толықтырылған шындық бойынша дәріс пен оқулықтан кейін мен онымен байланысты бірдеңе жасағым келді, бірақ мен суретті өңдеуден бастағым келеді, себебі мен бағдарламалауда әлсізбін және Python кодтауды үйренгім келеді.

5 -қадам: жақсартулар және болашақ нұсқалар не істейді?

Бұл жобаның жақсартуларының бірі - Python көмегімен тікелей бейнелерде менің жеке бет сүзгілерімді жасау. Мен мұны кодтауға тырыстым, бірақ олардың ешқайсысына қол жеткізе алмадым, себебі бағдарламалау білімі мен уақыт шектеулігі. Сонымен қатар, кескін процессоры «ақылды» бола алады, онда ол түстерді автоматты түрде анықтап, біз қалаған бөліктерді ғана өзгерте алады. Адамның қара шашын басқа түске өзгертуге тырысатын кездерім болады. Мен көздің де, шаштың да түсі көк түске өзгерте бастадым, бұл суретті біртүрлі етіп көрсетеді. Мен өз бетімді жасай аламын деп үміттенемін

Ұсынылған: