Кіріспе

Суреттің жарқырауының карталау функциясы

Гамма түзетуі немесе гамма – видео немесе тұрақты сурет жүйелерінде жарқыраудың немесе үш түстік компоненттердің мәндерін кодтау және декодтау үшін қолданылатын сызықты емес операция. Гамма түзетуі ең қарапайым жағдайларда келесі қуат заңы арқылы анықталады:

мұнда теріс емес нақты кіріс мәні қуатқа көтеріліп, тұрақты А-ға көбейтіледі, нәтижесінде шығыс мәні алынады. Егер A = 1 болса, кіріс және шығыс мәндері әдетте 0–1 аралығында болады. Гамма мәні кейде кодтау гаммасы деп аталады, ал осы сығу қуат заңының сызықтық еместігімен кодтау процесі гамма сығуы деп аталады; керісінше, гамма мәні декодтау гаммасы деп аталады, ал кеңейту қуат заңының сызықтық еместігін қолдану гамма кеңейтуі деп аталады.

Түсіндірме

Суреттерді гамма-кодтау, суретті кодтау кезінде биттерді тиімді пайдалану және суретті тасымалдау үшін қажетті жолақтың енін оңтайландыру үшін қолданылады. Бұл, адамдардың жарық пен түсті қабылдауының сызықты емес екендігін ескере отырып жасалады. Жылдам нүктелік суреттерді гамма-кодтау қажет емес (және тіпті зиянды болуы мүмкін), себебі жылдам нүктелік формат логарифмдік қисықтың бөлік-бөлік бойынша сызықтық жуықтауын қамтамасыз етеді. Гамма-кодтау бастапқыда катодты сәулелі түтік (CRT) дисплейлерінің жарықтық сипаттамаларын өтеу үшін жасалған болса да, қазіргі жүйелерде бұл оның басты мақсаты немесе артықшылығы емес. CRT дисплейлерінде жарықтың қарқындылығы электронды пушканың кернеуіне сызықты емес тәуелді. Кіріс сигналын гамма-сығу арқылы өңдеу осы сызықтық емес қасиетті жоюға мүмкіндік береді, нәтижесінде шығарылатын суретте күтілген жарықтық деңгейіне қол жеткізіледі. Дегенмен, дисплей құрылғысының гамма-сипаттамалары суреттер мен бейнелерді гамма-кодтау кезінде ескерілмейді. Гамма-кодтау сигналдың визуальды сапасын арттыру үшін қажет, дисплей құрылғысының гамма-сипаттамаларына қарамастан. Фотопленка, фотоқағаздағыдан гөрі көлеңкелердегі ұсақ айырмашылықтарды жақсырақ тіркеуге қабілетті. Сол сияқты, көптеген бейне экрандар әдеттегі электронды камералар түсіре алатын жарықтық диапазонына (динамикалық диапазонға) жете алмайды. Осы себепті, түпнұсқа суреттің қайта жаңғырту үшін қысқартылған формасын таңдауға көптеген көркемдік күш-жігер жұмсалады. Гамма-түзету немесе контрастты таңдау – қайта жаңғыртылған суретті реттеу үшін қолданылатын фотосуретшінің құралдарының бір бөлігі. Сол сияқты, цифрлық камералар жарықты сызықтық түрде жауап беретін электронды сенсорлар арқылы тіркеді. Сызықтық шикі деректерді стандартты RGB деректеріне (мысалы, JPEG сурет пішіміне сақтау үшін) айналдыру процесінде түс кеңістігінің түрлендірілуі және көрсету түрлендірілуі жүзеге асырылады. Әсіресе, барлық стандартты RGB түс кеңістіктері мен файл пішімдері, фотосуреттегі негізгі түстердің күтілетін қарқындылығының сызықты емес кодтауын (гамма-сығуын) қолданады. Сонымен қатар, жоспарланған қайта жаңғырту көбінесе өлшенген көрініс қарқындылығымен сызықты емес байланыста болады, бұл тондық қайта жаңғыртудың сызықтық емес қасиеті арқылы жүзеге асырылады.

Жалпыланған гамма

Гамма тұжырымдамасын кез келген сызықтық емес қатынасқа қолдануға болады. Қуат заңына сәйкес қатынаста, логарифмдік-логарифмдік графиктегі қисық түзу сызық болып келеді, оның еңістігі кез келген нүктеде гаммаға тең (мұнда еңістік туынды операторы арқылы көрсетіледі):

Яғни, гамманы логарифмдік осьтерде салынған кіріс-шығыс қисығының еңістігі ретінде көруге болады. Қуат заңы қисығы үшін бұл еңіс тұрақты, бірақ бұл идеяны кез келген қисық түріне қолдануға болады, онда гамма (нақтырақ айтқанда, "нүктелік гамма") нақты бір аймақтағы қисықтың еңістігі ретінде анықталады.

Фильмдік фотосурет

Фотопленка жарыққа ұшырағанда, экспозицияның нәтижесі көлденең осьте экспозицияның логарифмі, ал тік осьте тығыздық немесе өткізу қабілетінің логарифмінің теріс мәні көрсетілген графикте бейнеленеді. Белгілі бір пленка формуласы мен өңдеу әдісі үшін бұл қисық оның сипаттамалық қисығы немесе Hurter–Driffield қисығы деп аталады. Екі ось те логарифмдік бірліктерде өлшенгендіктен, қисықтың сызықты бөлігінің еңісі пленканың гаммасы деп аталады. Негативті пленканың гаммасы әдетте 1-ден кем болады; позитивті пленканың (слайд пленкасы, кері пленка) гаммасы 1-ден асатын абсолютті мәнге ие.

Аналогты теледидар

CRT негізіндегі теледидар қабылдағыштары мен мониторларына шығару көбінесе қосымша гамма түзетуді қажет етпейді. Берілетін немесе бейне файлдарында сақталатын стандартты бейне сигналдар CRT-нің гамма кеңеюіне сәйкес гамма сығуын қамтиды (ол дәл кері болмаса да). Теледидар сигналдары үшін гамма мәні тұрақты және аналогты бейне стандарттарымен анықталады. NTSC түсімен байланысты CCIR M және N жүйелері гамма 2.2 қолданады; PAL немесе SECAM түсімен байланысты B/G, H, I, D/K, K1, L және M жүйелері гамма 2.8 қолданады.

Компьютерлік дисплейлер

Көптеген компьютерлік дисплей жүйелерінде кескіндер шамамен 0,45 гаммамен кодталады және 2,2 гамманың кері шамасымен декодталады. 2009 жылдың қыркүйек айында Mac OS X 10.6 (Snow Leopard) нұсқасы шыққанға дейін, Macintosh компьютерлері 0,55 гаммамен кодталған және 1,8 гаммамен декодталған. Қалай болғанда да, тұрақты кескіндердегі (мысалы, JPEG) бинарлық деректер нақты кодталады (яғни, олар гаммамен кодталған мәндерді, сызықтық жарықтықты емес, сақтайды), сондай-ақ бейнефильмдерде (мысалы, MPEG) де осылай. Егер шығыс құрылғысының гаммасына жақсы сәйкес келу қажет болса, жүйе түсті басқару арқылы осы екі жағдайды да басқара алады. Көптеген камералар, компьютерлер және принтерлерде қолданылатын sRGB түс кеңістігі стандарты жоғарыда айтылғандай қарапайым қуат заңының сызықтықсыздығын қолданбайды, бірақ оның көп бөлігінде 2,2-ге жуық гамма-декодтау мәніне ие, бұл оң жақтағы/жоғарыдағы графикте көрсетілген. 0,04045 қысылған мәнінен немесе 0,00313 сызықтық жарықтықтан төмен, қисық сызықтық болады (кодталған мән жарықтыққа пропорционалды), сондықтан 1 = γ = 1. Қызыл қисықтан кейінгі тіктелген қара қисық – салыстыру үшін стандартты 1 = γ = 2,2 қуат заңы қисығы. Компьютерлерде гамма-түзету, мысалы, гамма = 1,8 Apple кескінін гамма = 2,2 PC мониторында дұрыс көрсету үшін кескіннің гаммасын өзгертуге қолданылады. Тағы бір қолданылуы – монитордың айырмашылықтарын түзету үшін жеке түс арналарының гаммаларын теңестіру.

Гамма мета-ақпарат

Кейбір кескін форматтары кескіннің арналған гаммасын (кодталған кескін үлгілері мен жарық шығысы арасындағы түрлендірулер) метадеректер ретінде сақтауға мүмкіндік береді, бұл автоматты гамма түзетуді жеңілдетеді. PNG спецификациясы осы мақсатта gAMA блогын қамтиды, ал JPEG және TIFF сияқты форматтарда Exif Gamma тегін қолдануға болады. Кейбір форматтарда ICC профилін, оның ішінде трансфер функциясын көрсетуге болады. Бұл мүмкіндіктер, әсіресе интернетте, бұрын проблемалар тудырды. HTML және CSS түстері және JPG немесе GIF кескіндері түстік профиль метадеректерімен бірге келмесе, танымал браузерлер сандық түс мәндерін түс басқарусыз дисплейге жіберді, нәтижесінде құрылғылар арасында көрініс айтарлықтай өзгеше болды. Алайда, сол браузерлер метадеректерде гаммасы нақты көрсетілген кескіндерді түс басқару арқылы жіберді, сондай-ақ метадеректерсіз PNG кескіндеріне әдепкі гамманы қолданды. Бұл PNG кескіндерінің барлық құрылғыларда HTML немесе белгіленбеген JPG түстерімен бірдей болуына кедерлес болды. Жағдай жақсарды, өйткені қазіргі көптеген негізгі браузерлер гамма параметрін (немесе оның жоқтығын) қолдайды.

Видеоға арналған қуат заңдары

Гамма-характеристика – теледидар жүйесінде кодталған люма мен нақты қажетті кескіннің жарықтылығы арасындағы қатынасты шамалайтын қуат заңдылығы. Бұл сызықтық емес қатынаспен кодталған жарықтылықтағы тең қадамдар шамамен жарықтылықтағы субъективті тең қадамдарға сәйкес келеді. Эбнер мен Фэрчайлд нейтральдар үшін сызықтық интенсивтілікті жеңілдікке (люма) аудару үшін 0,43-тің экспонентасын қолданды; керісінше, шамамен 2,33 (типілдік дисплейлік ішкі жүйе үшін келтірілген 2,2-ге өте жақын) сұр түстердің шамамен оңтайлы перцепциялық кодтауын қамтамасыз ететіндігі анықталды. Келесі сурет кодталған жарықтық сигналы сызықтық түрде өсетін масштаб (сызықтық гамма-сығымдалған люма кірісі) мен интенсивтілік масштабы сызықтық түрде өсетін масштаб (сызықтық жарықтық шығысы) арасындағы айырмашылықты көрсетеді. Сызықтық кодтау VS = 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Сызықтық интенсивтілік I = 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0

Көптеген дисплейлерде (гамма шамамен 2.2 бар) сызықтық интенсивтілік шкаласы интенсивтілік мәндері 0.0 және 0.1 арасында танылған жарықтылықта үлкен секіруді байқауға болады, ал шкаланың жоғарғы шетіндегі сатылар едәуір сезілмейді. Гамма кодталған шкалада, оның интенсивтілігі сызықтық емес түрде өседі, ол көрінетін жарықтықта әлдеқайда тепе-тең қадамдарды көрсетеді. Мысалы, катодты сәулелі түтік (CRT) бейне сигналын сызықтық емес жолмен жарыққа айналдырады, өйткені электронды қарудың интенсивтілігі (жарықтығы) қолданылатын бейне кернеуінің функциясы сызықтық емес. I жарық интенсивтілігі Vs көзі кернеуіне байланысты, мұнда γ – грек әрпі гамма. CRT үшін жарықтықты кернеуге байланыстыратын гамма әдетте 2,35-тен 2,55 аралығында болады; компьютерлердегі бейне іздеу кестелері жүйе гаммасын әдетте 1,8 – 2,2 аралығына реттейді, мұндай кестелерді дұрыс орнату аппараттық калибрлеу деп аталады. Кейбір заманауи мониторлар пайдаланушыға гамма-әрекетті (бұл жай ғана басқа жарық/қарама-қайшылық сияқты параметрлер) манипуляциялауға мүмкіндік береді, олар экранға шығарылғанға дейін кіріс сигналдарын кодтайды. Бұл да аппараттық әдіспен калибрлеу, бірақ ол алдыңғы жағдайлардағыдай цифрлық мәндерді қайта карталаудың орнына аналогты электр сигналдарында орындалады. Дұрыс калибрленген жүйеде әрбір компоненттің кіріс және/немесе шығыс кодтамалары үшін белгіленген гамма болады. Көп жағдайда гамма-түстердің түзету мәндері біршама өзгеше болады. Түс температурасын немесе ақ нүктесін орнату – мониторды реттеудің келесі қадамы. Гамма-коррекция алдында қажетті гамма және түс температурасын монитордың басқару құралдары арқылы орнату керек. Гамма, контраст және жарықтықты басқару элементтерін пайдалана отырып, гамма-түзету LCD-де тек бір нақты тік көру бұрышы үшін ғана орындалуы мүмкін, бұл монитордағы бір нақты көлденең сызықты, бір нақты жарықтық және контраст деңгейін білдіреді. ICC профилі мониторды жарықтылықтың бірнеше деңгейіне реттеуге мүмкіндік береді. Монитордың сапасы (және бағасы) осы жұмыс нүктесінің ауытқуының қаншалықты қанағаттанарлық гамма түзетуін беретінін анықтайды. Негізгі түстер үшін түстер тереңдігі 6 битті бұрмаланған нематикалық (TN) дисплейлер сапасы төмен. Ұшақ коммутациялауында (IPS) әдетте 8 бит түстер тереңдігі бар дисплейлер жақсы. Жақсы мониторлардың түсі 10 бит тереңдікте болады, аппараттық түстерді басқаруға ие және тристимулдық колориметрмен аппаратты калибрлеуге мүмкіндік береді. Көбінесе 6 биттік + FRC панелі 8 биттік, ал 8 биттік + FRC панелі 10 биттік болып сатылады. FRC – бұл біраз биттің орнына емес. 24 биттік және 32 биттік түстер тереңдігі форматтары негізгі түстер үшін 8 битті құрайды. Microsoft Windows 7 және одан жоғары нұсқаларында пайдаланушы гамма-түсіндірісті дисплейдің түстерін калибрлеу құралы dccw.exe немесе басқа да бағдарламалар арқылы орната алады. Бұл бағдарламалар ICC профиль файлын жасайды және оны әдетті түрде жүктейді. Бұл түспен басқаруды жеңілдетеді. Dccw бағдарламасында соңғы түсті аймақ, көбінесе жасыл түсті, текшелі және біртекті аймақта бірдей жарықтылыққа ие болғанша гамма слайдерін арттырыңыз. Қалған екі түсті реттеу үшін гамма-түсті түзету бағдарламасындағы түстер балансын немесе жеке түсті гамма-түсті түзету слайдерлерін пайдаланыңыз. Кейбір ескі графикалық карта драйверлері күту немесе қысқы ұйқы режимінен оянғаннан кейін түстерді дұрыс жүктемейді және дұрыс емес гамманы көрсетеді. Бұл жағдайда графикалық карта драйверін жаңартыңыз. X терез...

Өлшемін өзгерту және араластыру

Пиксельдік мәндерге қатысты операциялар "сызықтық жарықта" (гамма 1) орындалуы тиіс. Эрик Брассер бұл мәселені толыққанды талқылап, сынақ суреттерін ұсынады. Олар кең таралған проблеманы көрсетуге арналған: көптеген бағдарламалар физикалық тұрғыдан дұрыс сызықтық кеңістіктің орнына гаммамен түстік кеңістікте масштабтауды жүзеге асырады. Сынақ суреттері дұрыс емес түрде төмендетілген кезде түбірінен бөлек көрінеді. Джонас Берлин осы принципке негізделген «Сіздің масштабтау бағдарламалық қамтамасыңыз нашар/тамаша» суретін жасады. Масштабтаудан басқа, бұл мәселе төмендетудің басқа да түрлеріне (кемелеуге) қатысты, мысалы, JPEG-тің гамма қолданылған Y′CbCr форматындағы хромалық субдискретизациясы. WebP бұл мәселені сызықтық кеңістікте хроманың орташа мәнін есептеу арқылы шешеді, содан кейін гамма қолданылған кеңістікке қайта түрлендіреді; үлкен суреттер үшін итеративтік шешім қолданылады. Сол өткір YUV (бұрын «ақылды» YUV) коды sjpeg және опция бойынша AVIF-те қолданылады. Корнелски люмаға негізделген салмақты орташа есептеу арқылы қарапайым жуықтауды ұсынады. Альфа қосылуы, түстік градиенттер және 3D рендеринг те осы мәселеге ұшырайды. Қызығы, суретті үлкейту кезінде «бұрыс» (физикалық емес) гамма түстік кеңістігінде өңделген нәтиже көбінесе эстетикалық тұрғыдан әсерлі болады. Себебі Митчелл-Нетравали және Ланчос сияқты теріс бөліктері бар қайта үлгілеу сүзгілері адамның қабылдауы сызықтық емес және гамма арқылы жақсырақ жуықтауға болатын болса да, сыңғыр артефактілерін сызықтық түрде жасайды. (Сызықтық жарықта (гамма=1) төмендетуді ынталандыратын «артқа шегінуді» еліктеу үлкейту кезінде қолданылмайды.) Сыңғыр артефактілерін азайтудың осыған байланысты әдісі – ImageMagick және GIMP-тің LoHalo сүзгісімен басталып, madVR, AviSynth және Mpv-де бейне үлкейтуге бейімделген сигмоидальды жарық беру функциясын пайдалану болып табылады.