Riset CCTVplanner
    Catatan Teknis · CP-TN-01

    Geometri cakupan kamera CCTV

    Bagaimana kamera yang dimiringkan dan dipasang pada tiang mencitrakan tanah — geometri frustum, proyeksi lensa, dan standar jarak DORI, diturunkan dari prinsip dasar dan digambar oleh kode yang sama yang menjalankan perancang langsung.

    ID CP-TN-01Versi 1.0Diterbitkan 2026-07Standar EN 62676-43 gambar langsung — seret untuk menghitung ulang
    Abstrak

    Kami menurunkan, dari model kamera lubang jarum, tapak tanah kamera CCTV yang dimiringkan dan dipasang pada tiang: perpotongan tepi dekat dan tepi jauh, titik buta geometris tepat di bawah dudukan, dan jarak target DORI dari EN 62676-4 yang digambarkan sebagai busur di atas tanah. Setiap gambar di bawah ini dihitung secara langsung oleh modul geometri yang disertakan dengan perancang CCTVplanner — gerakkan penggeser untuk mereproduksi setiap hasil. Kami menutup dengan model proyeksi lensa, jebakan HFOV/DFOV pada lembar data, pembayangan penghalang, anggaran galat parameter, dan asumsi-asumsi yang menjadi dasar model dapat dipercaya.

    Konvensi
    tanah
    bidang z = 0
    kamera
    pusat optik pada ketinggian z = h
    sumbu
    +x right · +y forward · +z up
    kemiringan α
    diukur ke bawah dari horizontal
    sinar
    dipancarkan dari pusat optik dalam basis (f, r, u)
    sudut
    radian dalam turunan; derajat dalam gambar
    Cakupan — apa yang bukan tujuan catatan ini

    Model yang sepenuhnya geometris tentang di mana sinar kamera mendarat. Dalam batas asumsi yang dinyatakannya, model ini eksak secara geometris — presisi secara matematis, meskipun terbatas dalam cakupan. Model ini tidak berupaya memodelkan:

    • kualitas gambar atau derau sensor
    • artefak kompresi video
    • pencahayaan, cahaya redup, atau jangkauan IR
    • akurasi deteksi AI / analitik

    1Dari frustum ke tapak tanah

    Kamera lubang jarum mendefinisikan frustum pandang: sebuah piramida bersisi empat yang memanjang dari pusat optik kamera hingga ke batas-batas bidang gambarnya. Setiap titik gambar — pusat piksel dalam implementasi diskret — mendefinisikan sebuah sinar pandang dari pusat optik menembus bidang gambar. Untuk menemukan wilayah tanah yang dicakup kamera, kami memotongkan setiap sinar dengan bidang tanah dan menyimpan titik-titik yang berada di dalam jangkauan kamera. Model lubang jarum digunakan di sini karena memberikan hampiran yang mudah diolah secara analitis yang cocok dengan asumsi geometris EN 62676-4 dan spesifikasi terpublikasi sebagian besar kamera CCTV tetap.

    Untuk kamera pada ketinggian h, dimiringkan sebesar α di bawah horizontal, dengan bidang pandang vertikal vfov, selubung luar cakupan ditelusuri oleh batas gambar — untuk proyeksi rektilinear keempat sinar sudut saja sudah mendefinisikannya, sedangkan untuk proyeksi fisheye ia disampel di sepanjang seluruh batas. Pada pemasangan yang lazim (di mana α+vfov2<90\alpha + \tfrac{\text{vfov}}{2} < 90^\circ) bentuknya adalah tapak yang kira-kira trapesium dengan sudut-sudut melengkung — bukan segitiga atau sektor yang berpangkal di dudukan. Ketika α+vfov2\alpha + \tfrac{\text{vfov}}{2} mendekati 90° (dome langit-langit yang curam), tepi gambar bawah bertemu tanah di dasar tiang dan tapak merosot menuju bentuk sektor.

    Figure 1Jejak permukaan tanah tampak atas
    jangkauan 28 mh 4 mtilt 26°hfov 102°
    Fig. 1. Tapak tanah dari modul geometri produksi. Tepi bawah bertemu tanah sedikit di depan kamera; tepi-tepi lateral melebar keluar; tepi jauh dijepit pada jangkauan efektif. Lebarkan hfov melewati 180° dan tapak membungkus menjadi cakram penuh.

    2Perpotongan tepi dekat dan tepi jauh

    Setiap sampel bidang-gambar (s_H, s_V) ∈ [−1, 1]² dipetakan ke arah sinar pandang dalam kerangka kamera:

    d(sH,sV)=f+sHtanHFOV2r+sVtanVFOV2u\mathbf{d}(s_H, s_V) = \mathbf{f} + s_H\tan\tfrac{\text{HFOV}}{2}\,\mathbf{r} + s_V\tan\tfrac{\text{VFOV}}{2}\,\mathbf{u}
    (1)

    dengan f, r, u adalah vektor basis kamera maju / kanan / atas (pan dan tilt sudah diterapkan) — di sinilah HFOV dan VFOV masuk ke dalam geometri. Memotongkan sinar dari pusat optik sepanjang d dengan bidang tanah z = 0 menghasilkan setiap sampel tapak. Sinar tepi-bawah (s_V = −1) bertemu tanah pada jarak dekat, sinar tepi-atas (s_V = +1) pada jarak jauh:

    dnear=htan ⁣(α+vfov2)d_{\text{near}} = \dfrac{h}{\tan\!\left(\alpha + \frac{\text{vfov}}{2}\right)}
    (2)
    dfar={htan ⁣(αvfov2),α>vfov2  (below horizon)  clamp to R,αvfov2  (edge above horizon)d_{\text{far}} = \begin{cases} \dfrac{h}{\tan\!\left(\alpha - \frac{\text{vfov}}{2}\right)}, & \alpha > \tfrac{\text{vfov}}{2}\ \ (\text{below horizon}) \\[10pt] \infty \ \rightarrow\ \text{clamp to } R, & \alpha \le \tfrac{\text{vfov}}{2}\ \ (\text{edge above horizon}) \end{cases}
    (3)
    Figure 2Tampak samping — sinar, jalur tanah, titik buta
    h = 6 mkamerabuta · 7.2 md_near = 7.2 mjangkauan = 38 mh 6 mtilt α 16°vfov 48°
    Fig. 2. Tampak samping. Kedua garis biru adalah sinar tepi-bawah dan tepi-atas; jalur biru tebal adalah tempat kamera mencitrakan lantai (d_neard_far). Baji merah di bawah tiang adalah wilayah yang tidak dijangkau sinar mana pun. Naikkan h untuk menyaksikan titik buta membesar (§3); turunkan α di bawah vfov/2 dan tepi jauh naik di atas cakrawala serta dijepit ke jangkauan.

    Untuk tepi-tepi lateral (s_H = ±1) konstruksi yang sama berjalan pada bidang horizontal. Untuk lensa rektilinear (optik CCTV yang dominan) tepi-tepi ini terproyeksi menjadi garis-garis lurus yang menyebar — sisi-sisi miring trapesium. Untuk lensa fisheye pemetaannya melengkung dan tapak menjadi cakram melengkung.

    3Titik buta geometris

    Untuk setiap kamera yang dipasang di atas tanah dan dimiringkan kurang dari 90vfov290^\circ - \tfrac{\text{vfov}}{2}, sebuah wilayah tepat di bawah dudukan tidak menerima sinar sama sekali. Segala sesuatu yang lebih dekat dari d_near sepenuhnya berada di luar gambar, dan dengan kemiringan serta FOV tetap, titik buta berskala linear terhadap ketinggian:

    dnear=hcot ⁣(α+vfov2),dnearh=cot ⁣(α+vfov2)d_{\text{near}} = h\,\cot\!\left(\alpha + \tfrac{\text{vfov}}{2}\right), \qquad \frac{\partial d_{\text{near}}}{\partial h} = \cot\!\left(\alpha + \tfrac{\text{vfov}}{2}\right)
    (4)

    Kamera dengan kemiringan 15° dan FOV vertikal 50° memiliki titik buta sebesar 4.8 m pada 4 m dan 23.8 m pada 20 m — rasio 5× yang cocok dengan rasio ketinggian. Rasio luas buta terhadap luas cakupan adalah kendala dominan pada penempatan tiang tinggi.

    4Rentang DORI (EN 62676-4)

    Standar DORI (Detect / Observe / Recognize / Identify) mendefinisikan kerapatan piksel target — Identify 250, Recognize 125, Observe 62.5, Detect 25 px/m. Suatu kerapatan tertentu tercapai pada jarak miring (garis-pandang) spesifik dari lensa: jarak objek dalam relasi pencitraan px/m=fres/(sensord)\text{px/m} = f\cdot\text{res}/(\text{sensor}\cdot d). Untuk menempatkan suatu tingkat pada peta 2D, perancang memproyeksikan jarak miring itu ke tanah sebagai cincin horizontal pada jari-jari dslant2h2\sqrt{d_{\text{slant}}^{2} - h^2} (fungsi slantToGroundRadius pada modul), yang dipotong oleh tapak. Jadi busur-busur itu adalah jari-jari tanah horizontal yang diturunkan dari jarak miring tingkat tersebut — keduanya sama dengan jarak miring hanya untuk kamera setinggi tanah dan menarik ke dalam saat dudukan meninggi. Bagian 10 memetakan tingkat-tingkat px/m ini ke kriteria tinggi-layar, piksel-per-kaki, dan pasangan-garis yang digunakan di belahan dunia lain.

    Figure 3Cincin DORI sebagai busur di atas tanah
    Identify · 7 mRecognize · 15 mObserve · 32 mDetect · 64 mh 4 mtilt 20°hfov 90°range 70 m
    Identify
    250 px/m
    Recognize
    125 px/m
    Observe
    62.5 px/m
    Detect
    25 px/m
    Fig. 3. Tingkat-tingkat DORI di dalam tapak. Jarak miring setiap tingkat (8 / 16 / 32 / 64 m, ilustratif untuk kamera 1080p pada ~90° HFOV) diproyeksikan ke tanah oleh slantToGroundRadius milik mesin, sehingga setiap label menampilkan jari-jari horizontal d2h2\sqrt{d^2 - h^2}. Naikkan h dan tingkat-tingkat dekat menarik masuk, lalu lenyap begitu kamera berada di atas bola miring. Sempitkan hfov dan kerucut menjadi terlalu tipis untuk menahan cincin-cincin terluar.

    Proyeksi tanah. Jarak miring setiap tingkat menjadi jari-jari tanah horizontal:

    rground=dslant2h2r_{\text{ground}} = \sqrt{\,d_{\text{slant}}^{\,2} - h^2\,}
    (5)

    Kamera yang dipasang pada 6 m yang tingkat Identify-nya (250 px/m) tercapai pada jarak miring 8 m mencakup jari-jari tanah horizontal 5.3 m (6436\sqrt{64 - 36}). Inilah persisnya proyeksi yang diterapkan oleh perancang serta ekspor PDF dan DXF pada setiap tingkat. (Sebuah fallback lawas — kamera PTZ dan kamera tanpa konfigurasi tinggi-dudukan / titik-buta — menggambar jarak miring mentah sebagai jari-jari datar tanpa koreksi ketinggian.)

    5Model proyeksi lensa

    Rancangan lensa yang berbeda memetakan sudut θ dari sumbu optik ke jari-jari bidang-gambar r(θ) secara berbeda-beda. Tiga yang digunakan dalam CCTV:

    Proyeksir(θ)Rentang tipikal
    Rectilinearftanθf\tan\thetaHFOV ≲ 120° — sebagian besar lensa tetap & varifokal
    Equidistantfθf\,\thetaHFOV ≳ 140° — panoramik / fisheye
    Equisolid2fsin(θ/2)2f\sin(\theta/2)Fisheye yang mempertahankan sudut ruang

    Untuk lensa rektilinear, faktor luar-sumbu tanθ\tan\theta melampaui 1 begitu θ melewati 45° (HFOV > 90°) dan menyimpang menuju θ → 90°. Sebagai hampiran numeris — pilihan implementasi, bukan sifat optiknya — CCTVplanner menggunakan rektilinear hingga 170° HFOV, lalu beralih ke equidistant demi kestabilan; equisolid didukung pada lapisan geometri untuk data pabrikan yang menetapkannya.

    Jebakan lembar data: HFOV vs DFOV

    Banyak pabrikan — terutama Dahua, Hikvision, Uniview, Tiandy — mencantumkan satu angka FOV yang sebenarnya adalah bidang pandang diagonal (DFOV). Memasukkan DFOV ke alat yang mengharapkan HFOV menghasilkan tapak yang 10–15% terlalu lebar, dengan galat terpusat pada tepi-tepi lateral tempat kerapatan piksel paling penting. Untuk sensor dengan rasio aspek a (16:9 → a = 16/9):

    tanHFOV2=tanDFOV2aa2+1,tanVFOV2=tanDFOV21a2+1\tan\tfrac{\text{HFOV}}{2} = \tan\tfrac{\text{DFOV}}{2}\cdot\dfrac{a}{\sqrt{a^2+1}}, \qquad \tan\tfrac{\text{VFOV}}{2} = \tan\tfrac{\text{DFOV}}{2}\cdot\dfrac{1}{\sqrt{a^2+1}}
    (6)

    Pemetaannya nonlinear: jalan pintas linear yang menggoda HFOVkDFOV\text{HFOV} \approx k\cdot\text{DFOV} berhasil untuk lensa sempit tetapi gagal parah saat bidang melebar. Untuk sensor 16:9:

    DFOVHFOV eksakVFOV eksakGalat pintasan linear
    60°53.4°31.6°−1.1°
    80°72.4°44.7°−2.6°
    100°92.2°60.6°−5.0°
    120°113.0°80.7°−8.4°
    140°134.7°106.8°−12.7°

    6Penghalang, bayangan, dan tapak yang terlihat

    Dinding dan pagar menghalangi sinar. Setiap penghalang buram dimodelkan sebagai poligon atau polyline; setiap segmen diproyeksikan menjauhi kamera hingga beberapa kali jangkauan render, dan gabungan bayangan per-segmen itu adalah siluet penghalang beserta segala sesuatu di belakangnya. Tapak yang terlihat kemudian adalah footprintshadows\text{footprint} \setminus \bigcup \text{shadows}, melalui algoritma selisih-poligon Martínez–Rueda.

    Untuk analisis yang sadar-3D, penghalang yang lebih pendek dari kamera melemparkan bayangan tanah berhingga. Untuk dinding pada jarak horizontal d, ketinggian kamera h_cam, puncak penghalang h_obs:

    dshadow=dhcamhcamhobs(hcam>hobs)d_{\text{shadow}} = d\cdot\dfrac{h_{\text{cam}}}{h_{\text{cam}} - h_{\text{obs}}}\quad (h_{\text{cam}} > h_{\text{obs}})
    (7)

    Untuk hobshcamh_{\text{obs}} \ge h_{\text{cam}} penghalang sepenuhnya menghalangi garis pandang — bayangan tak hingga, diperlakukan sebagai penghalang sepenuhnya buram. Untuk bangunan dan penghalang generik, model tinggi-berhingga ini selalu diterapkan setiap kali kamera berada di atas struktur; untuk pagar, ia dikendalikan oleh sakelar "Gunakan tinggi vertikal (3D)" (bawaan: penghalang buram). Matematika ujung-bayangan berada di obstacleTypes.ts; obstacleClipping.ts menjalankan pengurangan selisih-poligon.

    7Proyeksi multi-lantai

    Perpotongan frustum-ke-tanah dapat digeneralisasi ke bidang horizontal mana pun: ganti z=0z = 0 dengan z=ztargetz = z_{\text{target}}, selesaikan persamaan sinar-bidang yang sama untuk setiap sinar sudut, dan hasilnya adalah tapak pada lantai itu. Kamera di lantai dua sebuah atrium mencakup lantai dasar melalui konstruksi yang sama — hanya dengan z_target dan ofset vertikal yang berbeda.

    8Asumsi dan batasan

    Setiap rumus di atas bertumpu pada asumsi penyederhanaan. Asumsi-asumsi itu berlaku untuk sebagian besar CCTV dudukan-tetap tetapi runtuh dalam kondisi tertentu — didokumentasikan agar praktisi tahu kapan harus memercayai model.

    Asumsi model

    • Tanah datar (z=0)(z = 0) — tanpa kemiringan lahan, tanpa kelengkungan Bumi.
    • Kamera statis saat pengambilan — tanpa gerakan PTZ, tanpa getaran.
    • Model lubang jarum — tanpa distorsi lensa Brown–Conrady (k₁, k₂, p₁, p₂).
    • Kalibrasi ideal — pitch, panjang fokus, pusat optik sesuai spesifikasi.
    • Tanpa rolling shutter; seluruh bingkai diambil pada satu saat.
    • Tanpa roll kamera; sensor tetap horizontal.
    • Jalur optik tunggal — tanpa refraksi dome, tanpa pantulan.

    Kapan model runtuh

    • Medan miring — tapak bergeser secara asimetris, galat ≈ ±h·tan(slope) per meter.
    • Distorsi sudut-lebar — melewati ~110° HFOV, rektilinear dapat menyimpang beberapa persen di sudut-sudut (bergantung pada lensa, kalibrasi, dan model).
    • Dome kaca — pergeseran refraktif berskala mm; hanya berpengaruh untuk DORI presisi-tinggi.
    • Optik pantulan-ganda — pantulan tidak ditelusuri; hanya garis pandang.
    • PTZ saat bergerak — model memberikan satu pan/tilt; cakupan adalah tapak yang tersapu.
    • Toleransi pemasangan — sudut nyata menyimpang 1–3°; §9 mengukur dampaknya.

    9Sensitivitas galat

    Galat masukan (ketinggian, kemiringan, FOV) merambat menjadi galat posisi-tanah. Untuk perpotongan dekat dnear=h/tan(α+vfov/2)d_{\text{near}} = h/\tan(\alpha + \text{vfov}/2), turunan-turunan parsialnya adalah:

    dnearh=dnearh,dnearα=hsin2(α+vfov/2),dnearvfov=h2sin2(α+vfov/2)(α, vfov in radians)\begin{gathered} \dfrac{\partial d_{\text{near}}}{\partial h} = \dfrac{d_{\text{near}}}{h}, \quad \dfrac{\partial d_{\text{near}}}{\partial \alpha} = \dfrac{-h}{\sin^2(\alpha + \text{vfov}/2)}, \quad \dfrac{\partial d_{\text{near}}}{\partial\,\text{vfov}} = \dfrac{-h}{2\sin^2(\alpha + \text{vfov}/2)} \\[5pt] \footnotesize (\alpha,\ \mathrm{vfov}\ \text{in radians}) \end{gathered}
    (8)

    Turunan parsial angular dinyatakan dalam radian (× π/180\pi/180 untuk per-derajat). Untuk konfigurasi tipikal (h = 10 m, tilt = 15°, vfov = 50° → d_near ≈ 11.9 m):

    ParameterGalat masukanΔ d_nearCatatan
    tilt α±1°±0.42 mresolusi inklinometer
    tilt α±3°±1.27 mpemasangan braket berdasar perkiraan mata
    height h±0.5 m±0.59 mpita ukur, tiang tak terjangkau
    vfov±1°±0.21 mpembulatan lembar data
    combinedRMS~1.4 mat 3° + 0.5 m + 1°

    Sederhananya: galat pemasangan 1° dapat menggeser zona Identify lebih dari lebar sebuah kusen pintu. Ketidakpastian sudut-pemasangan mendominasi: setiap derajat galat kemiringan berbiaya ~42 cm pada d_near di sini. Inklinometer laser hingga 0.1° menjaga galat akibat kemiringan di bawah 5 cm; braket berdasar perkiraan mata hanya akurat hingga ~±1 m. Untuk verifikasi tingkat DORI — tempat cincin Recognize dan Identify dapat berjarak 2–3 m — kemiringan sebaiknya diukur, bukan diperkirakan.

    10Kriteria jarak-target lintas standar

    DORI adalah lingua franca internasional, tetapi seorang perancang bekerja di bawah standar apa pun yang diwajibkan oleh yurisdiksi. Setiap kerangka mengodekan besaran fisis yang sama — detail yang dibutuhkan pada suatu jarak — dalam salah satu dari empat satuan: piksel per meter, persentase tinggi layar, piksel per kaki, atau pasangan-garis Johnson. Geometri di atas identik; hanya pembacaannya yang berubah.

    WilayahStandarSatuanDetect / Recognise / Identifyvs DORI
    Intl · EUIEC / EN 62676-4 (2014·2025)px/m25 / 125 / 250 (Obs 62.5)tangga acuan
    EU legacyEN 50132-7:2012% screen10% / 50% / 100%bentuk tinggi-layar
    UKHOSDB 28/09 · Rotakin% screen10% / 50% / 100%†= EN 50132-7
    AU · NZAS 4806.2 → AS/NZS 62676% → px/m10% / 50% / 100% → DORIberalih ke DORI
    USDHS S&T handbook · PPFpx/ft~10 / 40 / 80 ppfDORI × 0.305
    ChinaGB 37300-2018px on targetbody ≥200 · face ≥300 · plate ≥100px pada target
    UAEDubai SIRApx/m63.5 / 125 / 250≈ DORI
    IndiaBIS IS 16910-4px/m= DORImengadopsi IEC 62676-4
    RussiaGOST R 51558-2014 ‡inter-eye pxface ID ≥60 px IED ‡D/R/I parsial
    Mil · thermalJohnson 1958 · TTPline-pairs1.0 / 4.0 / 6.4 cycmodel yang mendasari
    Face biometricISO/IEC 19794-5 · 39794-5inter-eye px~10 / ~40 / ≥90 (IED)landasan bagi Identify

    † Identify di Inggris = 100% tinggi layar (HOSDB 28/09, 2009); spesifikasi PSDB 17/94 / Rotakin sebelumnya menggunakan 120%. Kriteria berlaku untuk orang acuan setinggi ~1.6–1.7 m. ‡ GOST R 51558 Rusia berkepercayaan-rendah di sini — teks primernya berbayar dan sumber sekunder saling bertentangan, jadi perlakukan nilainya sebagai indikatif. Biometrik-wajah IED = jarak antar-mata (pupil-ke-pupil): landasan piksel yang pada akhirnya menjadi tumpuan "Identify".

    Tidak setiap yurisdiksi menetapkan sebuah angka. Kanada (RCMP GCPSG-011) dan, dalam praktiknya, Arab Saudi (HCIS) mewajibkan kinerja kamera dibenarkan oleh penilaian risiko lokasi alih-alih target piksel yang baku, dan Jepang tidak menerbitkan kriteria jarak CCTV khusus.

    Revisi 2025 IEC 62676-4 menggantikan empat tingkat DORI dengan tangga OODPCVS tujuh-langkah — Overview, Outline, Discern, Perceive, Characterise, Validate, Scrutinise — pada 20 / 40 / 80 / 125 / 250 / 500 / 1500 px/m. Mesin CCTVplanner menghitung keduanya.

    Karena keempat satuan mengukur hal yang sama, keempatnya saling berkonversi secara persis jika resolusi sensor dan ukuran target diketahui:

    ppf=0.3048×(px/m)%screen height=100(px/m)HtargetVpixelspx/m=2Ndc  (N=Johnson line-pairs, dc=critical dim.)\begin{aligned} \text{ppf} &= 0.3048 \times (\text{px/m}) \\[3pt] \%\,\text{screen height} &= 100\cdot\frac{(\text{px/m})\cdot H_{\text{target}}}{V_{\text{pixels}}} \\[3pt] \text{px/m} &= \frac{2N}{d_c}\ \ (N=\text{Johnson line-pairs},\ d_c=\text{critical dim.}) \end{aligned}
    (9)

    Jadi satu jarak dalam mesin terbaca sebagai 250 px/m (DORI Identify), 100% tinggi layar (EN 50132-7 / HOSDB), 76 px/ft (AS), atau 6.4 pasangan-garis (Johnson) — kamera yang sama, empat kosakata.

    11Kesalahpahaman umum

    Empat kekeliruan menyumbang sebagian besar kesenjangan antara desain di atas kertas dan apa yang akhirnya terpasang — masing-masing merupakan konsekuensi langsung dari geometri di atas.

    HFOV sama dengan DFOV.
    Lembar data sering mencantumkan FOV diagonal. Digunakan sebagai horizontal, ia melebarkan tapak secara berlebih 10–15% dan menggelembungkan setiap rentang DORI (§5).
    Lensa yang lebih lebar berarti cakupan yang lebih baik.
    Lensa yang lebih lebar menyebarkan piksel yang sama ke lebih banyak pemandangan, sehingga kerapatan piksel — dan setiap jarak DORI — menurun. Lebih banyak luas, lebih sedikit detail yang dapat dikenali.
    Memasang lebih tinggi selalu meningkatkan keterlihatan.
    Ketinggian menumbuhkan titik buta secara linear (§3) dan mencuramkan sudut pandang ke bawah; melewati suatu titik Anda lebih banyak mencitrakan kulit kepala dan atap ketimbang wajah.
    Jarak DORI langsung terplot pada peta sebagai jari-jari tanah.
    Nilai px/m tercapai pada jarak miring (garis-pandang); cincin peta adalah proyeksi tanahnya √(slant²−h²), yang menarik ke dalam saat kamera dipasang lebih tinggi (§4).

    12Reproduktibilitas

    Setiap rumus di sini diimplementasikan langsung dalam modul geometri yang disertakan dengan perancang CCTVplanner — tanpa hampiran selain penyamplingan numeris, pemotongan poligon, dan pengurutan floating-point — dicakup oleh serangkaian uji unit yang meliputi proyeksi rektilinear / equidistant / equisolid, kasus-tepi titik-buta, proyeksi tanah DORI, pemotongan penghalang poligon-Boolean, dan perluasan multi-lantai. Setiap gambar di halaman ini memanggil fungsi-fungsi yang sama itu.

    Titik masuk utama

    • buildFrustum(args)basis kamera + metadata frustum
    • computeGroundFootprint(frustum, projection)poligon tapak yang disampel
    • slantToGroundRadius(frustum, slantM)d2h2\sqrt{d^2 - h^2} dengan pemeriksaan keterjangkauan
    • subtractObstacleShadows(footprint, shadows)selisih Martínez–Rueda
    • computeFloorFootprint(frustum, z, projection)varian multi-lantai

    §Referensi

    1. [1]IEC 62676-4:2014 (dengan amandemen) — Sistem pengawasan video untuk aplikasi keamanan, Bagian 4: Panduan aplikasi (jarak target DORI). Diterbitkan sebagai EN 62676-4 di Eropa.
    2. [2]Hartley & Zisserman, Multiple View Geometry in Computer Vision, ed. ke-2, Cambridge University Press, 2004.
    3. [3]Kannala & Brandt, "A generic camera model and calibration method for conventional, wide-angle, and fish-eye lenses," IEEE TPAMI, 2006.
    4. [4]Martínez, Rueda & Feito, "A new algorithm for computing Boolean operations on polygons," Computers & Geosciences, 2009 — dengan tindak lanjut 2013 di Advances in Engineering Software.
    5. [5]Szeliski, Computer Vision: Algorithms and Applications, ed. ke-2, Springer, 2022 (model proyeksi, geometri kamera — referensi standar).
    6. [6]EN 50132-7:2012 — Sistem alarm, sistem pengawasan CCTV, Bagian 7: Panduan aplikasi (persyaratan operasional tinggi-layar; digantikan oleh EN 62676-4).
    7. [7]IEC 62676-4:2025 (Ed. 2) — Panduan aplikasi yang memperkenalkan tangga kerapatan-piksel tujuh-langkah OODPCVS.
    8. [8]US DHS Science & Technology, Digital Video Quality Handbook, 2013 (diperbarui 2018) — panduan piksel-per-kaki untuk video keselamatan-publik.
    9. [9]GB 37300-2018 — Pengawasan video keamanan publik (Tiongkok, wajib), §5.6 persyaratan piksel-target.
    10. [10]Johnson, J. (1958), "Analysis of image-forming systems," Proc. Image Intensifier Symposium — dengan penerus Targeting Task Performance (TTP) NVESD, Vollmerhausen & Jacobs, Opt. Eng. 43(11), 2004.
    11. [11]ISO/IEC 19794-5:2011 & ISO/IEC 39794-5:2019 — Data citra-wajah biometrik (kriteria piksel antar-mata untuk pengenalan wajah dan pendaftaran).
    Cara mengutip

    Riset CCTVplanner. Geometri Cakupan Kamera CCTV. Catatan Teknis CP-TN-01, v1.0, 2026. cctvplanner.io/camera-physics

    @techreport{cctvplanner-cptn01-2026,
      title   = {The Geometry of CCTV Camera Coverage},
      author  = {{CCTVplanner Research}},
      number  = {CP-TN-01},
      version = {1.0},
      year    = {2026},
      url     = {https://cctvplanner.io/camera-physics}
    }

    Setiap gambar dalam catatan ini dihasilkan oleh mesin geometri yang sama dengan yang digunakan oleh perancang CCTVplanner.

    Buka perancang