Хобрук: Ваш путь к мастерству в программировании

Буфер камеры 720P против 1080P на камерах ios

Некоторые устройства iOS имеют камеры с разрешением 720P, а другие — 1080P.

Удерживая фиксированный размер экрана, очевидно, что 1080P обеспечит лучшее изображение, поскольку мы помещаем больше пикселей на тот же размер экрана.

Но если бы мы хотели манипулировать пикселями, используя:

-(void) captureOutput:(AVCaptureOutput *)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection *)connection 

и ради аргумента мы не будем их нигде рендерить, а будем выполнять над ними вычисления.

Очевидно, что высота и ширина буфера будут больше, но захватывает ли камера 1080P больше пикселей, возможно, из-за более широкого «поля зрения» камеры, и поэтому нет улучшения качества, или камера 1080p работает в том же «поле зрения». Vision» камеры 720p, и она просто захватывает больше пикселей на дюйм, поэтому, даже если я не вывожу буфер в изображение, я должен ожидать большей «зернистости/детализации» от моего буфера кадров.

Спасибо


Ответы:


1

У них одинаковое поле зрения, разница только в том, что 1080 захватывает больше пикселей с той же площади. Вот почему кадры больше, если бы вы распечатали необработанные кадры, вы бы увидели, что изображение 1080 больше, чем 720, но изображение такое же. Поэтому, когда вы показываете это в том же окне, 1080 выглядит красивее. Однако требуемый объем памяти выше, а скорость получения кадров ниже, вы также можете заметить большее падение кадров при разрешении 1080, если у вас включены параметры «отбрасывать поздние кадры».

В зависимости от скорости ваших вычислений вам, возможно, придется снизить ее еще больше, например, если вы выполняете сверхмощный стиль обработки изображений OpenCV с использованием 1080, это было бы просто невозможно, если требуется плавность.

Кстати, это не вопрос iOS или OpenGL. Просто так работают разрешения. Даже качество телетрансляции работает по тому же принципу.

10.01.2013
  • Спасибо за дополнительную информацию о скорости кадров. 11.01.2013
  • Новые материалы

    Учебные заметки JavaScript Object Oriented Labs
    Вот моя седьмая неделя обучения программированию. После ruby ​​и его фреймворка rails я начал изучать самый популярный язык интерфейса — javascript. В отличие от ruby, javascript — это более..

    Разбор строк запроса в vue.js
    Иногда вам нужно получить данные из строк запроса, в этой статье показано, как это сделать. В жизни каждого дизайнера/разработчика наступает момент, когда им необходимо беспрепятственно..

    Предсказание моей следующей любимой книги 📚 Благодаря данным Goodreads и машинному обучению 👨‍💻
    «Если вы не любите читать, значит, вы не нашли нужную книгу». - J.K. Роулинг Эта статья сильно отличается от тех, к которым вы, возможно, привыкли . Мне очень понравилось поработать над..

    Основы принципов S.O.L.I.D, Javascript, Git и NoSQL
    каковы принципы S.O.L.I.D? Принципы SOLID призваны помочь разработчикам создавать надежные, удобные в сопровождении приложения. мы видим пять ключевых принципов. Принципы SOLID были разработаны..

    Как настроить Selenium в проекте Angular
    Угловой | Селен Как настроить Selenium в проекте Angular Держите свое приложение Angular и тесты Selenium в одной рабочей области и запускайте их с помощью Mocha. В этой статье мы..

    Аргументы прогрессивного улучшения почти всегда упускают суть
    В наши дни в кругах веб-разработчиков много болтают о Progressive Enhancement — PE, но на самом деле почти все аргументы с обеих сторон упускают самую фундаментальную причину, по которой PE..

    Введение в Джанго Фреймворк
    Схема «работать умно, а не усердно» В этой и последующих статьях я познакомлю вас с тем, что такое фреймворк Django и как создать свое первое приложение с помощью простых и понятных шагов, а..