Що таке інтерполяція камери на Android смартфоні? Що таке інтерполяція камери в телефоні і для чого вона потрібна? Що значить інтерполяція до 13 мп

Інтерполяція зображень відбувається у всіх цифрових фотографіях на певному етапі, будь то дематрізація або масштабування. Вона відбувається всякий раз, коли ви змінюєте розмір або розгортку зображення з однієї сітки пікселів в іншу. Зміна розміру зображення необхідно, коли вам потрібно збільшити або зменшити число пікселів, тоді як зміна положення може відбуватися в самих різних випадках: виправлення викривлень об'єктива, зміна перспективи або поворот зображення.


Навіть якщо зміни розміру або розгортки піддається одне і те ж зображення, результати можуть значно відрізнятися в залежності від алгоритму інтерполяції. Оскільки будь-яка інтерполяція є всього лише наближенням, зображення буде дещо втрачати в якості щоразу, коли піддається інтерполяції. Дана глава покликана забезпечити краще розуміння того, що впливає на результат, - і тим самим допомогти вам мінімізувати будь-які втрати якості зображення, викликані інтерполяцією.

концепція

Суть інтерполяції полягає в використанні наявних даних для отримання очікуваних значень в невідомих точках. Наприклад, якщо вам захотілося знати, яка була температура опівдні, але вимірювали її в 11 і в годину, можна припустити її значення, застосувавши лінійну інтерполяцію:

Якби у вас було додатковий вимір о пів на дванадцяту, ви могли б помітити, що до полудня температура росла швидше, і використовувати це додатковий вимір для квадратической інтерполяції:

Чим більше вимірювань температури ви будете мати близько полудня, тим більше комплексним (і очікувано більш точним) може бути ваш алгоритм інтерполяції.

Приклад зміни розміру зображення

Інтерполяція зображень працює в двох вимірах і намагається досягти найкращого наближення в кольорі і яскравості пікселя, грунтуючись на значеннях оточуючих пікселів. Наступний приклад ілюструє роботу масштабування:

площинна інтерполяція
оригінал до після без інтерполяції

На відміну від коливань температури повітря і вищенаведеного ідеального градієнта, значення пікселів можуть змінюватися набагато різкіше від точки до точки. Як і в прикладі з температурою, чим більше ви знаєте про оточуючих пікселях, тим краще спрацює інтерполяція. Ось чому результати швидко погіршуються в міру розтягування зображення, а крім того, інтерполяція ніколи не зможе додати зображенню детальності, якої в ньому немає.

Приклад обертання зображення

Інтерполяція відбувається також кожен раз, коли ви повертаєте або змінюєте перспективу зображення. Попередній приклад був оманливий, оскільки це окремий випадок, в якому інтерполятора зазвичай працюють непогано. Наступний приклад показує, як швидко може бути втрачена детальність зображення:

деградація зображення
оригінал поворот на 45 ° поворот на 90 °
(без втрат)
2 повороту на 45 ° 6 поворотів на 15 °

Поворот на 90 ° не вносить втрат, оскільки жоден піксель не потрібно помістити на кордон між двома (і як наслідок розділити). Зауважте, як велика частина деталей втрачається при першому ж повороті, і як якість продовжує падати при наступних. Це означає, що слід уникати обертань, наскільки можливо; якщо нерівно виставлений кадр вимагає повороту, не слід обертати його більш ніж один раз.

Вищенаведені результати використовують так званий «Бікубічеський» алгоритм і показують істотне погіршення якості. Зверніть увагу, як знижується загальний контраст в зв'язку зі зниженням інтенсивності кольору, як навколо світло-синього виникають темні гало. Результати можуть бути значно краще в залежності від алгоритму інтерполяції і зображуваного предмета.

Типи алгоритмів інтерполяції

Загальноприйняті алгоритми інтерполяції можна поділити на дві категорії: адаптивні та неадаптівние. Адаптивні методи змінюються в залежності від предмета інтерполяції (різкі кордону, гладка текстура), тоді як неадаптівние методи обробляють всі пікселі однаково.

неадаптивні алгоритмивключають: метод найближчого сусіда, білінійної, Бікубічеський, сплайни, функція кардинального синуса (sinc), метод Ланцоша і інші. Залежно від складності, вони використовують від 0 до 256 (або більше) суміжних пікселів для інтерполяції. Чим більше суміжних пікселів вони включають, тим більш точними можуть виявитися, але це досягається за рахунок значного приросту часу обробки. Ці алгоритми можуть використовуватися як для розгортки, так і для масштабування зображення.

адаптивні алгоритмивключають в себе багато комерційних алгоритми в ліцензованих програмах, таких як Qimage, PhotoZoom Pro, Genuine Fractals і інші. Багато з них застосовують різні версії своїх алгоритмів (на основі попиксельного аналізу), коли виявляють наявність кордону - з метою мінімізувати непривабливі дефекти інтерполяції в місцях, де вони найбільш видно. Ці алгоритми в першу чергу розроблені для максимізації бездефектної детальності збільшених зображень, так що деякі з них для обертання або зміни перспективи зображення непридатні.

Метод найближчого сусіда

Це найбільш базовий з усіх алгоритмів інтерполяції, який вимагає найменшого часу обробки, оскільки враховує тільки один піксель - найближчий до точки інтерполяції. В результаті кожен піксель просто стає більше.

Білінійна інтерполяція

Білінійна інтерполяція розглядає квадрат 2x2 відомих пікселя, що оточують невідомий. Як інтерпольованого значення використовується зважене усереднення цих чотирьох пікселів. В результаті зображення виглядають значно більш гладко, ніж результат роботи методу найближчого сусіда.

Діаграма зліва відноситься до випадку, коли всі відомі пікселі рівні, так що интерполированное значення просто є їх сумою, поділеної на 4.

Бикубическая інтерполяція

Бикубическая інтерполяція йде на один крок далі билинейной, розглядаючи масив з 4x4 оточуючих пікселів - всього 16. Оскільки вони знаходяться на різних відстанях від неізвестногопікселя, найближчі пікселі отримують при розрахунку більшу вагу. Бикубическая інтерполяція виробляє значно різкіші зображення, ніж попередні два методи, і можливо, є оптимальною по співвідношенню часу обробки і якості на виході. З цієї причини вона стала стандартною для багатьох програм редагування зображень (включаючи Adobe Photoshop), драйверів принтерів і вбудованою інтерполяції камер.

Інтерполяція вищого порядку: сплайни і sinc

Є багато інших інтерполятора, які беруть до уваги більше оточуючих пікселів і таким чином вимагають більш інтенсивних обчислень. Ці алгоритми включають в себе сплайни і кардинальний синус (sinc), і вони зберігають більшість інформації про зображення після інтерполяції. Як наслідок, вони є виключно корисними, коли зображення вимагає декількох поворотів або змін перспективи за окремі кроки. Однак, для одноразових збільшень або поворотів такі алгоритми вищого порядку дають незначне візуальне поліпшення при істотному збільшенні часу обробки. Більш того, в деяких випадках алгоритм кардинального синуса на гладкому ділянці відпрацьовує гірше, ніж бікубічеськая інтерполяція.

Спостережувані дефекти інтерполяції

Все неадаптівние інтерполятора намагаються підібрати оптимальний баланс між трьома небажаними дефектами: граничними гало, розмиванням і ступінчастістю.

Навіть найбільш розвинені неадаптівние інтерполятора завжди змушені збільшувати або зменшувати один з вищенаведених дефектів за рахунок двох інших - як наслідок, як мінімум один з них буде помітний. Зауважте, наскільки граничне гало схоже на дефект, що породжується підвищенням різкості за допомогою нерезкой маски, і як воно підвищує гадану різкість за допомогою посилення чіткості.

Адаптивні інтерполятора можуть створювати або не створювати вищеописані дефекти, але вони теж можуть породити невластиві вихідного зображення текстури або поодинокі пікселі на великих масштабах:

З іншого боку, деякі «дефекти» адаптивних інтерполятора теж можуть розглядатися як переваги. Оскільки очей очікує побачити в областях з дрібної текстурою, таких як листя, деталі аж до найдрібніших подробиць, подібні малюнки можуть обдурити очей на відстані (для певних видів матеріалу).

згладжування

Згладжування або анти-алиасинг є процесом, який намагається мінімізувати появу східчастих або зубчастих діагональних кордонів, які надають тексту або зображень грубий цифровий вигляд:


300%

Згладжування видаляє ці сходинки і створює враження більш м'яких кордонів і з високою роздільною здатністю. Воно бере до уваги, наскільки ідеальна межа перекриває суміжні пікселі. Ступінчаста межа просто округлена вгору або вниз без проміжного значення, тоді як згладжена межа видає значення, пропорційне тому, наскільки багато від кордону потрапило в кожен піксель:

Важливим міркуванням при збільшенні зображень є запобігання надмірної ступенчатости в результаті інтерполяції. Багато адаптивні інтерполятора визначають наявність кордонів і коригуються з метою мінімізувати ступінчастою, зберігши при цьому різкість кордону. Оскільки згладжена межа містить інформацію про своє становище при більш високій роздільній здатності, цілком можливо, потужний адаптивний (визначає межі) інтерполятор зможе хоча б частково реконструювати кордон при збільшенні.

Оптичний і цифровий зум

Багато компактні цифрові камери можуть здійснювати як оптичне, так і цифрове збільшення (зум). Оптичний зум здійснюється рухом варіоб'ектіва, так щоб світло посилювався до потрапляння на цифровий сенсор. На контрасті, цифровий зум знижує якість, оскільки здійснює просту інтерполяції зображення - вже після отримання його сенсором.


оптичний зум (10x) цифровий зум (10x)

Навіть незважаючи на те, що фото з використанням цифрового зуму містить стільки ж побільшало пікселів, його детальність чітко менше, ніж при використанні оптичного зума. Цифровий зум слід практично повністю виключити, За вирахуванням випадків, коли він допомагає відобразити віддалений об'єкт на РК-екрані камери. З іншого боку, якщо ви зазвичай знімаєте в JPEG і хочете згодом обрізати і збільшити знімок, цифровий зум має перевагу в тому, що його інтерполяція здійснюється до внесення дефектів компресії. Якщо ви виявляєте, що цифровий зум вам потрібен занадто часто, купіть телеконвертор, а ще краще об'єктив з великою фокусною відстанню.

Вбудована камера - не остання річ при виборі смартфона. Для багатьох важливий цей параметр, так що багато при пошуку нового смартфона звертають на те, скільки заявлено мегапікселів в камері. У той же час, розбираються люди знають, що не в них справа. Так що давайте розглянемо на що потрібно звертати увагу при виборі смартфона з хорошою камерою.

Те, як буде знімати смартфон, залежить від того, який модуль камери в ньому встановлений. Виглядає він як на фото (модулі передньої і основний камер виглядають приблизно однаково). Він легко розміщується в корпусі смартфона і, як правило, кріпиться шлейфом. Такий спосіб дозволяє легко його замінити в разі поломки.

Монополістом на ринку є Sony. Саме її камери, в підновляти більшості, використовуються в смартфонах. Також виробництвом займаються OmniVision і Samsung.

Важливий сам виробник смартфона. Насправді, від бренду залежить багато чого, і поважаюча себе компанія оснастить свій апарат дійсно хорошою камерою. Але давайте розберемося від чого залежить якість зйомки смартфона по пунктам.

процесор

Ви здивовані? Саме процесор зайде обробкою знімка, коли отримає дані з фотоматриці. Якою б якісною була матриця, слабкий процесор не зможе обробити і перетворити ту інформацію, яку отримає від неї. Це стосується не тільки записи відео у високій роздільній здатності і швидкій зміні кадрів в секунду, а й створення знімків високого дозволу.

Зрозуміло, чим більше кадрів в секунду змінюється, тим більше навантаження на процесор.

Серед людей розбираються в телефонах, або які вважають що вони розбираються, побутують думку, що смартфони з процесорами американської Qualcomm знімають краще, ніж смартфони на тайваньських процесорах MediaTek. Чи не спростовувати і не підтверджувати я цього не буду. Ну а те, що смартфонів з відмінними камерами на малопродуктивних китайських процесорах Spreadtrum немає, станом на 2016 рік, це вже факт.

кількість мегапікселів

Знімок складається з пікселів (точок), які формує фотоматриця під час зйомки. Зрозуміло, чим більше пікселів, тим якісніше має бути зображення, вище його чіткість. У камерах цей параметр вказується як мегапікселі.

Мегапікселі (Мп, Мпкс, Mpix) - показник дозволу фотографій і відео (кількості пікселів). Один мегапиксель - один мільйон пікселів.

Візьмемо, для прикладу, смартфон Fly IQ4516 Tornado Slim. Він знімає фотографії з максимальною роздільною здатністю 3264x2448 пискля (3264 кольорових крапок по ширині і 2448 по висоті). 3264 пискля множимо на 2448 пискля, виходить 7 990 272 пікселів. Число велике, тому його переводять в значення Мега. Тобто, число 7 990 272 пікселів, приблизно, 8 мільйонів пікселів, тобто 8 мегапікселів.

За ідеєю, більше пискля, значить чіткіше фотографія. Але не варто забувати про шуми, про погіршенні зйомки при поганому освітленні і т.д.

інтерполяція

На жаль, багато китайські виробники смартфонів не гребують програмним збільшенням дозволу. Це називається інтерполяцією. Коли камера може зробити знімок з максимальною роздільною здатністю 8 Мп, а його програмно збільшують до 13 Мп. Зрозуміло, при цьому якість краще не ставати. Як не бути обманутим в такій випадку? Шукайте в Інтернеті інформацію про те, який модуль камери використовується в смартфоні. У характеристиках модуля зазначено в який дозвіл він знімає. Якщо не знайшли інформацію про модуль - вже є привід насторожитися. Іноді в характеристиках смартфона може бути чесно вказано, що камера інтерпольованого, наприклад, з 13 Мп до 16 Мп.

Програмне забезпечення

Не варто недооцінювати програмне забезпечення, Обробляє цифрове зображення і представляє його нам в тому кінцевому вигляді, яким ми бачимо його на екрані. Воно визначає передачу кольорів, усуває шуми, забезпечує стабілізацію зображення (коли смартфон в руці смикається при зйомці) і т. Д. Не кажучи вже про різні режими зйомки.

матриця камери

Важливий тип матриці (CCD або CMOS) і її розмір. Саме вона захоплює зображення і передає його на обробку процесору. Від матриці залежить дозвіл камери.

Діафрагма (світлосила)

При виборі смартфона з хорошою камерою варто звертати увагу на цей параметр. Грубо кажучи, він вказує те, скільки світла отримує матриця через оптику модуля. Чим більше тим краще. Менше сету - більше шумів. Позначається діафрагма буквою F зі слешем (/). Після слеша і вказується значення діафрагми, і, чим воно менше, тим краще. Як приклад, вказується так: F / 2.2, F / 1.9. Часто вказується в технічні характеристикисмартфона.

Камера з діафрагмовим F / 1.9 буде знімати краще при слабкому освітленні, ніж камера з діафрагмою F / 2.2, так як в ній на матрицю потрапляє більше світла. Але і стабілізація при цьому важлива, як програмна, так і оптична.

Функція оптичної стабілізації

Смартфони рідко оснащуються оптичною стабілізацією. Як правило, це дорогі апарати з просунутою камерою. Такий апарат можна назвати камерофоном.

Зйомка смартфоном ведеться з рухомою руки і щоб зображення не було змазане, застосовується оптична стабілізація. Може бути і гібридна стабілізація (програмна + оптична). Особливо важлива оптична стабілізація при довгій витримці, коли через недостатню освітленість знімок може робитися протягом 1-3 секунд в спеціальному режимі.

спалах

Спалах може бути світлодіодна і ксеноновая. Остання забезпечить набагато кращі фотографіїпри відсутності освітленості. Зустрічається подвійний світлодіодний спалах. Рідко, але може бути і дві: світлодіодна і ксеноновая. Це самий кращий варіант. Реалізовано в камерофон Samsung M8910 Pixon12.

Як видно, то, як буде знімати смартфон залежить від багатьох параметрів. Так що при виборі, в характеристиках варто звертати увагу на назву модуля, діафрагму, наявність оптичної стабілізації. Найкраще пошукати огляди конкретного телефону в Інтернеті, де можна ознайомитися з прикладами знімків, а також думкою автора про камері.

Сенсори - це пристрої, що визначають лише градації сірого (градації інтенсивності світла - від повністю білого до повністю чорного). Щоб камера могла розрізняти кольори, на кремній за допомогою процесу фотолітографії накладається масив кольорових фільтрів. У тих сенсорах, де використовуються мікролінзи, фільтри поміщаються між лінзами і фотоприймачем. У сканерах, де використовуються трикутні ПЗС (поруч розташовані три ПЗС, що реагують відповідно на червоний, синій і зелений кольори), або в high-end цифрових камерах, де також використовуються три сенсора, на кожен сенсор фільтрується світло свого певного кольору. (Зауважимо, що в деяких камерах з декількома сенсорами використовуються комбінації декількох кольорів в фільтрах, а не три стандартних). Але для пристроїв з одним сенсором, якими є більшість споживчих цифрових фотоапаратів, для обробки різних кольорів використовуються масиви кольорових фільтрів (color filter arrays, CFA).

Для того щоб кожного пікселя відповідав свій основний колір, над ним поміщається фільтр відповідного кольору. Фотони, перш ніж потрапити на піксель, спочатку проходять через фільтр, який пропускає тільки хвилі свого кольору. Світла іншої довжини буде просто поглинатися фільтром. Вчені визначили, що будь-який колір в спектрі можна отримати змішуванням всього декількох основних кольорів. У моделі RGB таких кольору три.

Для кожного застосування розробляються свої масиви кольорових фільтрів. Але в більшості сенсорів цифрових камер найбільш популярними є масиви фільтрів колірної моделі Байера (Bayer pattern). Ця технологія була винайдена в 70-х компанією Kodak, коли проводилися дослідження в області просторового поділу. У цій системі фільтри розташовані упереміж, в шаховому порядку, а кількість зелених фільтрів у два рази більше, ніж червоних або синіх. Порядок розташування такий, що червоні і сині фільтри розташовані між зеленими.

Таке кількісне співвідношення пояснюється будовою людського ока - він більш чутливий до зеленого світла. А шаховий порядок забезпечує однакові за кольором зображення незалежно від того, як ви тримаєте камеру (вертикально або горизонтально). При читанні інформації з такого сенсора, кольору записуються послідовно в рядках. Перший рядок повинна бути BGBGBG, наступна - GRGRGR і т.д. Така технологія називається послідовною RGB (sequential RGB).

У ПЗЗ камерах поєднання всіх трьох сигналів воєдино відбувається не на сенсорі, а в пристрої формування зображення, вже після того, як сигнал перетворений з аналогового вигляду в цифровий. У КМОП сенсорах це поєднання може відбуватися безпосередньо на чіпі. У будь-якому випадку, первинні кольори кожного фільтра математично інтерполюються з урахуванням кольорів сусідніх фільтрів. Зауважимо, що в будь-якому зображенні більшість точок - це змішання основних кольорів, і лише деякі дійсно представляють чистий червоний, синій або зелений колір.

Наприклад, щоб визначити, вплив сусідніх пікселів на колір центрального при лінійної інтерполяції буде оброблятися матриця пікселів розміром 3х3. Візьмемо, наприклад, найпростіший випадок - три пікселя - з синім, червоним і синім фільтрами, розташовані в одному рядку (BRB). Припустимо, ви намагаєтеся отримати результуюче значення кольору червоного пікселя. Якщо всі кольори рівноправні, то колір центрального пікселя обчислюється математично як дві частини синього до однієї частини червоного. Насправді ж, алгоритми навіть простої лінійної інтерполяції набагато складніші, вони враховують значення всіх оточуючих пікселів. Якщо інтерполяція відбувається погано, то виходять зубці на кордонах зміни кольорів (або з'являються колірні артефакти).

Відзначимо, що слово "дозвіл" в області цифрової графіки вживається некоректно. Пуристи (або педанти - кому як більше подобається), знайомі з фотографією і оптикою, знають, що дозвіл - це міра здатності людського ока або приладу розрізняти окремі лінії на сітці дозволів, наприклад, на сітці ISO, показаної нижче. Але в комп'ютерній індустрії прийнято дозволом називати кількість пікселів, і якщо вже так повелося, ми також підемо цієї конвенції. Адже навіть розробники називають дозволом кількість пікселів в сенсорі.


Порахуємо?

Розмір файлу зображення залежить від кількості пікселів (дозволу). Чим більше пікселів, тим більше файл. Наприклад, зображення сенсорів стандарту VGA (640х480 або 307200 активних пікселів) буде займати в стислому вигляді близько 900 кілобайт. (307200 пікселів по 3 байта (R-G-B) = 921600 байт, що приблизно дорівнює 900 кілобайтам) Зображення 16 MP сенсора буде займати близько 48 мегабайт.

Здавалося б, що такого - порахувати кількість пікселів в сенсорі, щоб визначити розмір виходить зображення. Проте, виробники камер представляють купу різних цифр, і кожен раз стверджують, що це і є справжнє дозвіл камери.

У загальне число пікселів входять всі пікселі, фізично існуючі в сенсорі. Але активними вважаються тільки ті, які беруть участь в отриманні зображення. Близько п'яти відсотків всіх пікселів не братимуть участі в отриманні зображення. Це або дефектні пікселі, або пікселі, що використовуються камерою за іншим призначенням. Наприклад, можуть існувати маски для визначення рівня темнового струму або для визначення формату кадру.

Формат кадру - співвідношення між шириною і висотою сенсора. У деяких сенсорах, наприклад, з роздільною здатністю 640х480, це співвідношення дорівнює 1,34: 1, що відповідає формату кадру більшості комп'ютерних моніторів. Це означає, що зображення, створені такими сенсорами, будуть точно укладатися в екран монітора, без попереднього кадрування. У багатьох апаратах формат кадру відповідає формату традиційної 35-міліметровою плівки, де співвідношення дорівнює 1: 1,5. Це дозволяє робити знімки стандартного розміруі форми.


інтерполяція дозволу

Крім оптичного дозволу (реальна здатність пікселів реагувати на фотони), існує також дозвіл, збільшене програмно-апаратним комплексом, за допомогою інтерполюються алгоритмів. Як і в інтерполяції кольорів, в інтерполяції дозволу математично аналізуються дані сусідніх пікселів. При цьому в результаті інтерполяції створюються проміжні значення. Таке "впровадження" нових даних може здійснюватися досить гладко, при цьому інтерпольовані дані будуть чимось середніми, між реальними оптичними даними. Але іноді при такій операції можуть виникати різні перешкоди, Артефакти, виникати шуми, в результаті яких якість зображення лише погіршиться. Тому багато песимісти вважають, що інтерполяція дозволу - це зовсім не спосіб поліпшення якості зображень, а лише метод збільшення файлів. При виборі пристрою звертайте увагу, який дозвіл зазначено. Не варто сильно радіти високому інтерпольованого вирішенню. (Воно позначається як interpolated або enhanced).

Ще один процес обробки зображення на програмному рівні - це Субдіскретізація (Sub-sampling). По суті, це процес, зворотний інтерполяції. Цей процес проводиться на стадії обробки зображення, вже після того, як дані перетворені з аналогового цифровий вигляд. При цьому видаляються дані різних пікселів. У КМОП сенсорах цю операцію можна провести на самому чіпі, тимчасово відключивши зчитування певних рядків пікселів, або зчитуючи дані лише з обраних пікселів.

Субдіскретізація виконує дві функції. По-перше, для ущільнення даних - щоб зберігати більше знімків в пам'яті певного розміру. Чим менше кількість пікселів, тим менше виходить розмір файлу, і тим більше знімків ви зможете вмістити на картці пам'яті або у внутрішньої пам'ятіпристрою і тим рідше вам доведеться завантажувати фотографії на комп'ютер або змінювати картки пам'яті.

Друга функція цього процесу - створення зображень певного розміру для певних цілей. Камери з 2MP сенсором цілком по зубах зробити знімок стандартної фотографії розміром 8х10 дюймів. Але якщо ви спробуєте переслати таку фотографію поштою, то це помітно збільшить розмір листа. Субдіскретізація дозволяє обробити зображення так, щоб воно нормально виглядало на моніторах ваших друзів (якщо не ставити за мету деталізацію) і при цьому відправлялося досить швидко навіть на машинах з повільним з'єднанням.

Тепер, коли ми ознайомилися з принципами роботи сенсорів, знаємо, як виходить зображення, давайте заглянемо трохи глибше і торкнемося більш складні ситуації, що виникають при цифровій фотографії.

Сподобалася стаття? Поділіться з друзями!