水平画角計算
幅36 mmのフルサイズセンサーで50 mmレンズを使うと、横方向の画角は四十度弱です。焦点距離とセンサー幅を同じ単位で入れれば、部屋や風景が画面に収まるかが分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 焦点距離
- 50
- センサー幅
- 36
- 水平角 (°)
- 39.597752709
- 水平角 (rad)
- 0.6911111612
- 単位に関する注記
- focal_length and sensor_width must use the same length unit
水平画角は、写真の横幅にどれだけ広い範囲が収まるかを示す値です。レンズの焦点距離と、センサーまたはフィルムの有効幅を同じ単位で入力すると、理想的な直線投影における水平画角を度とラジアンで返します。カメラ形式の比較、撮影前のレンズ選び、室内や風景が構図に収まるかの確認、実写カメラと仮想カメラの調整に役立ちます。
焦点距離と有効センサー幅の単位をそろえてください
レンズの焦点距離と撮像面の有効幅は、必ず同じ長さの単位で入力してください。写真分野では通常ミリメートルを使い、フルサイズの代表例なら焦点距離を 50、センサー幅を 36 とします。式が利用するのは2つの値の比率なので、両方を正しく換算すればセンチメートルでも同じ結果になります。
焦点距離をミリメートル、幅をインチにするような混在は避けてください。部品図に記載された外形寸法ではなく、実際に記録される画像の有効幅を指定します。クロップされた動画モード、電子式手ぶれ補正、特殊なアスペクト比では、公称幅より狭い領域だけを使う場合があります。
その情報が分かるときは実効幅をご使用ください。どちらの値も有限かつ 0 より大きい必要があります。0 以下の焦点距離は直線投影モデルで意味を持たず、0 以下の幅も撮像領域を表しません。
そのような入力は誤解を招く角度を返さず、エラーとして扱います。
計算された水平画角の意味をご確認ください
計算には、センサー幅を焦点距離の2倍で割り、その逆正接を2倍する標準的な直線投影の式を使います。結果は、理想的な画像円すいの左端と右端が作る角度です。焦点距離が同じならセンサーが広いほど画角は広がり、幅が同じなら焦点距離が長いほど狭くなります。
応答には、撮影計画や機材比較に読みやすい度数と、グラフィックスソフト、シミュレーション、追加計算に使えるラジアンの両方が含まれます。検証済みの入力値、使用した式、単位をそろえるための注意も返します。魚眼投影、メーカー固有の歪曲収差補正、フォーカスブリージングによる実画角の変化は扱いません。
精密な映像制作ではそれらの影響も重要ですが、レンズ選び、学習、機材比較、一般的な構図設計にはこの標準式が適切な出発点です。
撮影計画に結果をご活用ください
水平画角は、固定した位置からカメラが横方向にどれだけ広く見渡せるかを直接表します。室内のロケハンでは、壁、家具、人物のグループが後退せずに収まるかを複数のレンズで比較できます。風景撮影では、どこまで地平線が入り、前景がどの程度強調されるかを予測する目安になります。
異なる形式を比較する場合は、希望する角度を固定し、それぞれのセンサー幅で複数の焦点距離を試してください。ほぼ同じ水平画角になる組み合わせは、同じ撮影位置から左右方向が似た構図になります。ただし遠近感はカメラの位置で決まるため、画角を合わせても位置を変えれば同じ幾何にはなりません。
バーチャルプロダクションでは、水平視野角を明示的に求めるソフトへ度数を入力し、垂直または対角の値を要求していないかご確認ください。正方形でない画面では3つの角度が異なります。実撮影では、クロップ、手ぶれ補正、歪曲、ファインダー視野率、納品時のアスペクト比に備えて余裕を設けてください。
活用例
狭い場所に適したレンズを選ぶ
焦点距離と有効センサー幅を比較し、カメラ位置を変えずに必要な範囲を収められるレンズを見積もれます。
異なるカメラ形式で構図を合わせる
フルサイズ、APS-C、シネマ用、特殊センサーの間で、近い水平画角になる焦点距離と幅の組み合わせを探せます。
仮想カメラを設定する
プリビズ、ゲームエンジン、合成、バーチャルプロダクション向けに、度またはラジアンの安定した水平視野角を算出します。
よくある質問
どの単位を使えばよいですか?
2つの入力で同じ長さの単位を使えば種類は問いません。写真では通常、焦点距離とセンサー寸法をミリメートルで指定します。
水平画角と対角画角は同じですか?
異なります。 水平画角はフレーム幅だけを使い、対角画角はセンサー対角線を使うため、正方形でない場合は後者が大きくなります。
クロップファクターの入力は必要ですか?
必要ありません。 実際の有効センサー幅を直接入力してください。幅が分かる場合、クロップファクターによる間接比較は不要です。
フルサイズで50 mmレンズの水平画角はどれくらいですか?
幅36 mmのセンサーなら、左右におよそ四十度弱です。焦点距離が短いほど、またセンサーが広いほど、この角度は大きくなります。
クロップされる動画モードではどの幅を入れますか?
カメラが実際に記録する幅を入れます。動画のクロップ、電子手ぶれ補正、特殊な縦横比では公称のセンサー幅より狭くなることがあるので、分かればその実効幅を使ってください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/hobby/photo-horizontal-angle-of-view \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"focal_length":50,"sensor_width":36}'const res = await fetch("https://api.kit.forhosting.com/hobby/photo-horizontal-angle-of-view", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"focal_length": 50,
"sensor_width": 36
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/hobby/photo-horizontal-angle-of-view",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"focal_length": 50,
"sensor_width": 36
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/hobby/photo-horizontal-angle-of-view", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"focal_length":50,"sensor_width":36}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"focal_length":50,"sensor_width":36}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/hobby/photo-horizontal-angle-of-view", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"focal_length": 50,
"sensor_width": 36
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "hobby.photo_horizontal_angle_of_view",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
計算は決定的で、ブラウザーでは通信せずに動作し、API では1リクエスト $0.002 で利用できます。
焦点距離と有効センサー幅の単位をそろえてください
計算部分は数値文字列も受け付けますが、構造化されたクライアントでは明確な契約のため JSON 数値を送信してください。
計算された水平画角の意味をご確認ください
値は有用な精度を保ちながら、反復実行で安定した JSON になるよう小数点以下10桁に丸めます。このモデルは、通常の撮影条件における理想的な直線投影レンズを表します。
技術的な質問
どの計算式を使用しますか?
理想的な直線投影の標準式 2 × atan(sensor_width ÷ (2 × focal_length)) を使用します。
API の利用料金はいくらですか?
API は1リクエスト $0.002 です。ブラウザー版は API を呼び出さず、端末内で実行されます。