4.6. Ролінговий та глобальний затвор

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

4.6.1. Порядок зчитування

Типові датчики починають з лівого нижнього пікселя і скануються вправо вздовж цього рядка, потім переходять до наступного рядка вище та знову скануються вправо, і так далі — аж до правого верхнього пікселя.

A grid of 6 columns by 4 rows of pixel cells. The bottom-left cell is marked "read first". A rightward arrow runs along each row showing the scan direction. To the right of the grid, an upward arrow labelled "rows advance" indicates that the scan moves up to the next row after each row finishes. The top-right cell is marked "read last".

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

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

4.6.2. Ролінговий затвор

У датчику з ролінговим затвором кожен рядок витримується і зчитується по черзі. Поки один рядок зчитується, наступний ще завершує витримку, рядок після нього щойно почав, і так далі — вікно витримки кожного рядка зміщене в часі відносно наступного. Вікно інтегрування датчика прокочується по кадру в порядку сканування, а повне сканування займає весь час кадру.

Для нерухомих сцен це непомітно. У сценах зі швидким рухом зміщення виявляється як перекіс — об’єкт, що переміщується між моментом захоплення першого рядка та моментом захоплення останнього рядка, виявляється на різних позиціях у різних рядках одного кадру.

Three panels showing a vertical bar moving to the right. The first panel shows the bar at one instant, vertical. The second panel shows the same bar captured by rolling shutter: it appears as a slanted parallelogram, leaning to the right at the bottom, because the top rows were captured when the bar was at its earlier position and the bottom rows when it had moved to the right. The third panel shows the bar captured by global shutter: vertical and at one position.

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

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

4.6.3. Глобальний затвор

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

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

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

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

4.6.4. Коли який використовувати

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

Ролінговий затвор підходить, коли:

  • сцена нерухома або рухається повільно;

  • застосунок може допустити певний перекіс (більшість фотографій і більшість задач користувацького інтерфейсу);

  • пріоритетами є вартість і роздільна здатність за ту саму ціну.

Глобальний затвор є правильним вибором, коли:

  • сцена містить швидкий рух, який потрібно захоплювати чисто (робототехніка, дрони, контроль конвеєрної лінії);

  • сама камера вібрує або переміщується відносно статичної сцени;

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

Примітка

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