проблема
Я пытаюсь определить размер объекта, используя фокусное расстояние, определяемое автофокусом камеры смартфона (Galaxy Note 8). Но я не могу точно определить фокусное расстояние.
Я надеюсь найти причину (ы), по которой расстояние фокусировки не может быть точно определено, и, возможно, найти решение, чтобы сделать его более точным.
Что я сделал до сих пор
При фокусировке на близких объектах расстояние фокусировки приблизительно равно расстоянию до объекта. Поэтому я сделал фотографию известного объекта (карты размером с кредитную карту) на известном расстоянии, чтобы вычислить и сравнить все значения. Вот фотография, которую я сделал:
![Photo of card at 169 mm (note: rescaled for upload)](https://i.stack.imgur.com/Rwlen.jpg)
И это соответствующие значения:
А затем для расстояния карты до камеры:
Где рассчитанное расстояние получается с использованием уравнения из этой темы :
![Equation](https://i.stack.imgur.com/ajKph.png)
расстояние = (4,3 * 85,6 * 4032) / (1688 * 5,645) = 156 мм
Обсуждение
Как видно, эти значения не совпадают, в то время как они должны быть. Поэтому я пытаюсь выяснить, откуда происходят эти отклонения. Возможные объяснения:
- Неверное фокусное расстояние (см. здесь ), но, поскольку камеры смартфонов имеют фиксированное фокусное расстояние, я не могу представить, что это проблема
- Камера слишком сильно отклоняется от модели камеры с точечным отверстием (камера откалибрована, однако, с здесь )
- Калибровка расстояния автофокусировки не совсем точна, чтобы начать с
Решения
Единственное решение, которое я мог бы придумать, - это самостоятельно откалибровать расстояние автоматической фокусировки до реального расстояния. Но нужно ли это делать для каждого устройства или калибровка будет работать на всех смартфонах одного типа без повторной калибровки?
Надеюсь, вы сможете мне помочь.
Редактировать
Я сделал еще несколько измерений, теперь с шаблоном шахматной доски. Я установил камеру на известном расстоянии и измерил размер квадрата шахматной доски и расстояние фокусировки, заданное камерой. Вот результаты:
![Results table](https://i.stack.imgur.com/JUJUI.jpg)
Как видно из таблицы, расстояние фокусировки, заданное камерой, на самом деле удивительно точно (+/- 4% на расстояниях <170 мм). Фокусное расстояние, заданное камерой, однако, не является точным, я бы сказал, что причина этого в том, что камера <a href="https://community.giffgaff.com/t5/Blog/How-Does-Auto-Focus-Work-On-Your-Smartphone/ba-p/16633200" rel="nofollow noreferrer"> перемещает объектив , чтобы получить хорошую фокусировку. Рассчитав фокусное расстояние по известному размеру рисунка шахматной доски (см. Таблицу результатов), можно увидеть, что фокусное расстояние действительно изменяется, и фокусное расстояние, заданное камерой (4,3 мм), таким образом, весьма вероятно, фокусное расстояние в фокусе это бесконечность. Для расчета размера объекта это необходимо учитывать.