指定されたカメラが標準カメラか広角カメラかを検出する方法はありますか?指定されたカメラが一般カメラか広角カメラかを確認する方法は?
Oppo、Vivo、LGなどのデバイスでは、Camera2 APIを使用してそれぞれのカメラにアクセスできます。どのカメラがプライマリカメラでどのカメラが広角カメラであるかを知る方法は?
指定されたカメラが標準カメラか広角カメラかを検出する方法はありますか?指定されたカメラが一般カメラか広角カメラかを確認する方法は?
Oppo、Vivo、LGなどのデバイスでは、Camera2 APIを使用してそれぞれのカメラにアクセスできます。どのカメラがプライマリカメラでどのカメラが広角カメラであるかを知る方法は?
各カメラの視野を計算し、カウントできるほど広いかどうかを判断できます。
度で水平視野のための標準的な式は:
FOV = 2 * arctan(sensor_width/(2 * lens_focal_length))
と垂直FOVのため、センサ高さを使用します。
camera2 APIからは、焦点距離はAVAILABLE_FOCAL_LENGTHS、センサの物理的寸法はPHYSICAL_SIZEにリストされています。
完全に正確にする場合は、実際に画像を生成するために実際に使用されるphysical pixel arrayのサブセットであるactive arrayを考慮する必要があります。しかし、それは通常、何千ものピクセルからなるわずか数行です。しかし、それを考慮に入れたい場合は、次のようなものが必要になります:
active_width = sensor_width * active_array_width/pixel_array_width
でFOVを計算します。また、時々、FOVは、あなたがしたいセンサー寸法は広角カメラとしてカウント何のための単一の定義は、ほとんどのモバイルデバイスのカメラがすでにあり、特に以来、
sensor_diagonal = sqrt(sensor_width^2 + sensor_height^2)
ありますされていない場合には対角1、ある報告しました65〜75度のFOV範囲。
サムスンS8のフロントカメラは80度のFOVを持ち、サムスンはバックカメラは77度のFOVを持ちながらサムスンは「ワイドセルフ」と呼んでいます。しかし、これらが水平または斜めのFOVであるかどうかはわかりません。