
'Guardian' adalah aplikasi web pengintai video yang secara otomatis memantau CCTV militer.
Latar belakang pengembangan
Dalam beberapa tahun terakhir, beberapa pasukan menekankan pekerjaan peringatan karena kegagalan
"Umur panjang yang gagal dalam operasi dapat dimaafkan, tetapi umur panjang yang gagal batas tidak dapat dimaafkan."
Karena ada duta besar seperti itu, pekerjaan batas penting di unit militer.
Tetapi di suatu tempat, ada kasus di mana warga sipil masuk karena mereka rusak, tetapi mereka kemudian diidentifikasi.
Berdasarkan contoh -contoh ini, pekerjaan batas ditekankan.
Banyak CCTV secara bersamaan dipantau dengan botol pengintai
Jika satu pengawasan secara bersamaan memantau lebih dari 10 CCTV dan berfokus pada satu layar, layar lain mungkin luar biasa.
Suara alarm tanpa pandang bulu untuk deteksi kecil
CCTV, yang memiliki fungsi deteksi gerakan, rentan terhadap guncangan daun dan perubahan cahaya yang tiba -tiba. Karena alasan ini, para penjaga tidak peduli dengan daging sapi, apakah ada gerakan atau tidak.
Tujuan Pembangunan
Identifikasi CCTV dengan orang -orang di CCTV, otomatisasi gerakan gerakan
Di area yang ditetapkan, Jurnal Situasi ditulis saat mengidentifikasi seseorang atau kendaraan, dan jika objek yang ditemukan menghilang, melacak rute.
Diidentifikasi Penyelidikan Basis Data Situasi Lampau
Data yang teridentifikasi dan video perekaman otomatis dapat dilihat kapan saja untuk membantu melacak kecelakaan.
Suara alarm TTS yang bisa dikenali pengguna
Ketika deteksi gerakan terjadi, itu bukan suara dering, tetapi ketika hanya seseorang dan kendaraan yang terdeteksi, itu akan menginformasikan deteksi orang atau kendaraan dengan TTS.
File ppt
File pdf
| Presentasi | Demonstrasi |
|---|---|
| Google Drive | Google Drive |
Oven
2020 Defense Open Source Academy Hackathon -Guardian Development Review
| Jurnal Streaming dan Situasi RTSP |
|---|
![]() |
| Ini menunjukkan data aliran RTSP yang didukung oleh kamera jaringan atau DVR di web. |
| Deteksi orang dan kendaraan |
|---|
![]() |
| Deteksi objek berbasis Yolo mengidentifikasi orang dan mobil. |
| Setelah pelacakan jarak deteksi dan perekaman otomatis |
|---|
![]() |
| Jika objek menghilang, lacak jalur dan tunjukkan kepada pengguna. |
| Saat Anda memiliki deteksi tertentu |
| (Deteksi ~ Deteksi Gerakan Akhir) Catat cabang dan tunjukkan kepada pengguna. |
| Pratinjau video perekaman otomatis |
|---|
![]() |
| Ini adalah video perekaman otomatis yang terdeteksi dalam contoh di atas. |
| Statistik Seri Waktu Harian |
|---|
![]() |
| Catat data demi hari untuk menginformasikan informasi yang terdeteksi dari 0 hingga 24:00. |
| Streaming data identifikasi masa lalu |
|---|
![]() |
| Jika Anda memilih waktu dalam statistik, Anda dapat melihat video identifikasi yang terdeteksi pada saat itu. |
Alasan memilih teknologi utama
Proyek Golang : Video Surveillance telah memilih bahasa GO dengan kinerja, konkurensi, dan HTTP karena memproses data waktu nyata yang besar.
OpenCV : Sebagai proyek dengan banyak visi komputer, saya memilih perpustakaan 'opencv' open source.
Darknet Yolov4-Tiny : Model Yolo itu sendiri dilahirkan untuk mendeteksi objek waktu nyata.
Karena lingkungan pengembangan terbatas pada VM, saya memilih model kecil yang dapat dioperasikan dalam inti CPU kecil.
React : Front End Frame Walk yang mudah dikembangkan aplikasi web.
Backend
| Golang | Gema | Opencv | Mongodb |
|---|---|---|---|
| Naskah | React.js | Kerangka kerja Antd UI | Socket.io | Video.js |
|---|---|---|---|---|
| Buruh pelabuhan |
|---|
| Darknet Yolov4 |
|---|
Instalasi Perpustakaan OpenCV untuk penggunaan GOCV
> go get -u -d gocv.io/x/gocv
> cd $GOPATH /src/gocv.io/x/gocv
> make installInstalasi modul ujung depan
> git clone https://github.com/osamhack2020/WEB_GUARDIAN_GUARDIAN.git
> cd frontend
> yarn installMembangun lingkungan CCTV virtual
> git clone https://github.com/gron1gh1/docker-rtsp-video-streaming.git
> cd docker-rtsp-video-streaming
> vi .env
# Modify .env file
> HOST_PORT={Port to be actually serviced}
> VIDEO_FILE ={Video File to be actually streamed}
> docker-compose up -dEksekusi Basis Data
> cd infra/mongo
# 데이터베이스 패스워드 설정
> echo MONGO_PW={set_password} > .env
> docker-compose up -dLari ujung depan
> cd frontend
> yarn startJalankan backend
> cd backend
# 데이터베이스 패스워드 설정
> echo {set_password} > MONGO_PW
> go run cv_core.go cv_motion_liner.go cv_util.go http.go cv_motion.go cv_yolo.go mongo.go :8081Backend Run (Docker)
# OpenCV 라이브러리를 설치하지 않았을 때 쓰는 방법입니다.
# 데이터베이스 패스워드 설정
> cd WEB_GUARDIAN_GUARDIAN
> docker -v $PWD /backend:/ gocv/opencv ' go run cv_core.go cv_motion_liner.go cv_util.go http.go cv_motion.go cv_yolo.go mongo.go :8081 '
> echo {set_password} > MONGO_PW
> go run cv_core.go cv_motion_liner.go cv_util.go http.go cv_motion.go cv_yolo.go mongo.go :8081Akses Browser Internet http: // localhost: 8080