Мазмуну:

GET1033 Python коддуу сүрөт иштетүүчү: 5 кадам
GET1033 Python коддуу сүрөт иштетүүчү: 5 кадам

Video: GET1033 Python коддуу сүрөт иштетүүчү: 5 кадам

Video: GET1033 Python коддуу сүрөт иштетүүчү: 5 кадам
Video: Python программалоо тилинде маалыматтын типтери жана арифметикалык операциялар 2024, Ноябрь
Anonim
GET1033 Python коддуу сүрөт иштетүүчү
GET1033 Python коддуу сүрөт иштетүүчү

Бул долбоор менин модулум үчүн GIT1033 эсептөө медиа сабаттуулугун изилдөө үчүн питон менен коддолгон сүрөт процессорумду түзүү жөнүндө. Башында, колдонуучу өзүнүн сүрөтүн киргизип, андан кийин өзү каалаган фильтрлерди тандашы керек болот. Мен 9 фильтрди түздүм: Киргизүү сүрөтүн көрсөтүү, Күзгү, Бардын артына коюу, Ачык тилкенин артына коюу, Чөйрө сүрөтү, Бүдөмүктөө, Айлануу, Түсүн өзгөртүү жана Photoshop. Анын бирин тандагандан кийин, чыгуучу сүрөт эффектке ээ болот. Сүрөттө көрсөтүлгөндөй, бул түстү өзгөртүү үчүн чыпка, анда мен сүрөттөгү жашыл түстөгү пикселдерди аныктап, кызгылт түскө айландырам.

1 -кадам: Аны жасоо процесси

Аны жасоо процесси
Аны жасоо процесси

1 -кадам: Pythonду бул жерден жүктөп алыңыз!

2 -кадам: коддо!

Биринчиден, мен коддо колдонуу үчүн алдын ала коддолгон функциясы бар бир нече пакеттерди импорттодум. Мен импорттогон пакеттер Scipy, Matplot жана Numpy.

Scipy үчүн, Мен Ар түрдүү Программаларды (MISC) жана Көп өлчөмдүү Сүрөт иштетүүнү (NDIMAGE) импорттодум. MISC - бул сүрөттү окуу жана сактоо үчүн, ал эми NDIMAGE - гаусс чыпкасын аткаруу жана айландыруу.

Matplotlib үчүн, бул Pythonдо MATLABга окшош интерфейсти камсыз кылган графикти түзүү үчүн китепкана.

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тагы Avengers сүрөтүн алат.

Мен дагы кодумду GitHubга тиркеп койдум жана аны бул жерден жүктөп алсаңыз болот!

2 -кадам: Бул кантип иштейт?

Бул кантип иштейт?
Бул кантип иштейт?

Блок -схема бүт код кантип иштээрин көрсөтүү үчүн тиркелген!

1. Биринчиден, колдонуучу тандалган сүрөттү киргизет. 2. Андан кийин колдонуучу тандай турган чыпкалардын тизмесин көрсөтөт. 3. Эгерде колдонуучу '1' ден '9' га чейин киргизсе, сүрөт иштетилет жана ар бир чыпкага ылайык чыгарылат. Эгерде колдонуучу 'R' деп жазса, анда программанын баары баштапкы абалга келтирилет жана колдонуучудан кайра сүрөт жүктөө суралат. Эгерде колдонуучу 'Q' киргизсе, анда программа циклден чыгат.

3 -кадам: Бул эмне кылат?

Бул долбоордо мен түзгөн 9 фильтр бар, тактап айтканда

1. Киргизилген сүрөттү көрсөтүү - Жүктөлүп берилген сүрөттү көрсөтүү үчүн

2. Күзгү сүрөтү - объектинин чагылдырылган кайталануусу, бирок багыты боюнча тескери бурулат

3. Артка тилкени коюу - туурасы жана аралыгы 50 пикселге барабар кара вертикалдуу тилкелерди коюу.

4. Ачык тилкенин артына коюңуз - туурасы жана аралыгы 50 пикселге барабар тунук вертикалдуу тилкелерди коюу

5. Circle Picture - Сүрөттүн ортосуна тегерек кылуу

6. Бүдөмүк - Сүрөттү бүдөмүк кылуу

7. Rotation - Сүрөттү 45 градуска буруу үчүн

8. Түсүнүн өзгөрүшү - жашыл түстү кызгылт түскө өзгөртүү

9. Photoshop - Сүрөттүн бир бөлүгүн башка сүрөт менен өзгөртүү

4 -кадам: Мен эмнеге жетиштим?

Буга чейин Instagram жана Snapchat сүрөттөрдүн чыпкаларын кантип кызыктырганын билгим келет. Өркүндөтүлгөн реалдуулук боюнча лекциядан жана үйрөткүчтөн кийин, мен ага байланыштуу бир нерсе кылгым келди, бирок мен сүрөттү иштетүүдөн баштоону каалайм, анткени мен программалоодо алсызмын жана Python кодун үйрөнгүм келет.

5 -кадам: Жакшыртуулар жана келечектеги версиялар эмне кылат?

Бул долбоордун жакшыртууларынын бири - бул Python аркылуу жандуу видеолордо өзүмдүн жеке чыпкаларымды түзүү. Мен муну коддоого аракет кылдым, бирок программалоо билиминин жоктугунан жана убакыттын тардыгынан алардын бирине да жете алган жокмун. Мындан тышкары, сүрөт иштетүүчү "акылдуу" болушу мүмкүн, анда ал түстөрдү автоматтык түрдө аныктап, биз каалаган бөлүктөрдү гана өзгөртө алат. Мен бир кезде адамдын кара чачын башка түскө алмаштырайын деп жатам. Көздүн да, чачтын да түсүн көккө өзгөртүп, сүрөттү абдан кызыктай кылып көрсөтөм. Мен өзүмдүн жүзүмдү түзө алам деп үмүттөнөм

Сунушталууда: