사례 요약
Beijing Winge Technology Co., Ltd.는 RK3588 Ubuntu 엣지 컴퓨터에서 동작하는 단일 채널 산업용 연기 모니터링 시스템을 납품했습니다. 3프레임 MobileNetV3-Small ONNX 모델이 먼저 연기 유무를 판단하고, 주간에는 두 번째 단계가 검은 연기, 비검은 연기 또는 색상 불확실을 분류합니다. 검은 연기 조건이 확인 시간 동안 유지되면 MCP2221A GPIO가 설정된 경보 레벨을 출력합니다.
납품 범위에는 모델, RTSP 입력, 웹 콘솔, 이미지·동영상 테스트, systemd/Nginx 배포, GPIO 연동, ARM64 패키지, 롤백 백업, 체크섬과 장치 검증 기록이 포함됩니다. 여기서 “검은 연기”는 프로젝트의 영상 색상 라벨이며 링겔만 농도, 오염물질 농도 또는 법정 배출 판정이 아닙니다.
프로젝트 배경
고객은 관리되는 LAN의 RK3588 장치에 산업용 카메라 한 대를 연결하여 영상을 계속 미리 보고 연기 상태를 로컬에서 판단해야 했습니다. 또한 MCP2221A GP0-GP3에서 설정 가능한 High 또는 Low 논리 레벨을 출력하여 PLC, 릴레이, 경광등이나 부저에 연결해야 했습니다.
따라서 범위는 분류 모델뿐 아니라 영상 디코딩, ARM64 배포, 서비스 자동 시작, 브라우저 설정, 오류 처리, 테스트 출력 격리, 고객 설치 자료와 롤백을 포함했습니다. 대상 환경은 RK3588, Ubuntu 22.04 ARM64, Nginx, Gunicorn, OpenCV DNN 및 ONNX였습니다.
납품 범위
| 항목 | 납품 내용 |
|---|---|
| 연기 단계 | 3프레임 MobileNetV3-Small ONNX 분류 |
| 색상 단계 | 주간 검은 연기, 비검은 연기, 색상 불확실 분류 |
| 영상 입력 | RTSP, HTTP 또는 로컬 영상과 MJPEG 브라우저 미리보기 |
| 웹 콘솔 | 스트림 URL, 알고리즘, 색상 임계값, GPIO 핀, 유효 레벨 설정 |
| 미디어 테스트 | 이미지·동영상 테스트와 선택 가능한 MCP2221A 출력 연동 |
| 경보 출력 | GP0-GP3 선택, Active-High 또는 Active-Low |
| 배포 운영 | Nginx, Gunicorn, systemd, udev, 상태 점검, 고정 IP, 롤백 |
| 산출물 | ARM64 패키지, 모델, 스크립트, 테스트, 문서, SHA-256 |
기술 구조
처리 경로는 산업용 카메라 또는 업로드 미디어 → OpenCV/FFmpeg 디코딩 → 3프레임 시계열 연기 분류 → 고정 시야 및 비정상 프레임 보호 → 주간 색상 분류 → 연속 확인 → MCP2221A GPIO 출력 → 웹 상태와 로그입니다.
RK3588 런타임은 OpenCV DNN으로 ONNX를 로드하므로 PyTorch가 필요하지 않습니다. Nginx는 LAN HTTP를 제공하고 Gunicorn은 127.0.0.1:8000에서만 수신합니다. 프로그램은 /opt/smoke-control, 설정은 /var/lib/smoke-control/config.json에 있으며 smoke-control.service가 자동 시작을 관리합니다.
2단계 판단과 경보 규칙
첫 단계는 연속 세 프레임으로 연기를 판단합니다. 연기가 나온 경우에만 색상 단계를 실행합니다. 주간에는 black_smoke, 비검은 연기 또는 불확실을 반환하고, 야간에는 연기 검출은 유지하지만 색상을 unknown_night로 반환하여 검은 연기 경보를 내지 않습니다.
경보에는 연기, 검은 연기 색상, 설정 신뢰도, 확인 시간의 네 조건이 모두 필요합니다. 프로젝트 기준 확인 시간은 2초입니다. 업로드 테스트는 실시간 GPIO와 격리할 수 있으며, 연동을 명시적으로 켠 경우 설정 레벨을 유지한 뒤 실시간 자동 제어로 복귀합니다.
현장 문제와 수정
고정 카메라 화면에는 어두운 가구, 유리 반사, 정적인 암부, 검은 테스트 화면, 이진 도형, 노이즈가 있는 검은 화면과 어두운 그라데이션이 있었습니다. 확인 배경, 구조 제약 정지 화면, 순수 검정·이진 도형, 실시간 정지 화면과 전체 암부 보호를 순차적으로 추가했습니다.
전체 암부 규칙은 평균 회색값이 24 이하이고 99백분위가 50 이하일 때만 동작합니다. 읽을 수 있는 프로젝트 이미지 1,760장 역검사에서 새 규칙의 일치는 0장이었습니다. 가장 어두운 검은 연기 양성 샘플의 평균은 19.32였지만 99백분위는 62여서 차단되지 않았습니다.
밝은 배경의 검은 연기 영상에서는 기존 어두운 픽셀 하한 14%와 달리 고객 37초 영상이 9.03%–11.38%였습니다. 배경 P90이 250 이상인 경우에만 하한을 8%로 조정했으며 일반 암부 화면에는 적용하지 않습니다.
검증 결과
아래 수치는 2026-07-26부터 2026-07-29까지의 내부 프로젝트 기록입니다. 명시된 소프트웨어, 모델, 샘플, 장치와 방법에만 적용되며 임의 현장의 일반 정확도를 뜻하지 않습니다.
| 검증 항목 | 결과와 조건 |
|---|---|
| 고객 영상 | 37초, 1024×540, 30 FPS, 1110프레임, 0.5초 간격 74샘플 |
| 장치 영상 결과 | 연기 74/74, 검은 연기 후보 73/74, 모의 경보 조건 충족 |
| 출력 경계 | 해당 검수는 output_isolated=true로 GPIO를 구동하지 않음 |
| v1.9.4 회귀 | TP 57, FN 8, FP 2, TN 83; 기록 기준 대비 FP 증가 없음 |
| v2.0.3 로컬 테스트 | 70개 테스트와 18개 하위 테스트 통과 |
| 비정상 암부 회귀 | 검정, 근검정, 노이즈, 그라데이션 등 13개 변형을 무연기로 판단 |
| 역검사 | 1,760장 중 새 전체 암부 규칙 일치 0장 |
| 고객 장치 암부 테스트 | 노이즈 또는 그라데이션 이미지 3장이 연동 출력을 활성화하지 않음 |
| 검은 연기 양성 | 연기 신뢰도 98.53%, 색상 신뢰도 99.99%, 양성 유지 |
| 최종 실시간 샘플 | 6회 연속 스트림 연결, 무연기, 무경보, GP0 Low |
| 배포 무결성 | 변경 4개 파일 SHA-256 장치 일치, 서비스 active/enabled |
프로젝트 결과
- RTSP 입력, ARM64 추론, 2단계 판단, GPIO 출력까지의 경로를 구축했습니다.
- 영상, 알고리즘, 임계값, 핀과 유효 레벨을 웹 콘솔에서 관리합니다.
- 업로드 테스트, 실시간 모니터링과 하드웨어 출력의 경계를 분리했습니다.
- 암부, 검은 화면, 이진 도형, 노이즈, 그라데이션, 밝은 배경 연기에 회귀 가능한 보호를 적용했습니다.
- 프로그램, 모델, 배포 스크립트, 테스트, 문서, 해시와 롤백 지점을 제공했습니다.
적용 시나리오
- 산업 현장 고정 시야 연기 모니터링의 시제품 및 엔지니어링 검증.
- RK3588 ARM64 장치의 엣지 비전 추론과 LAN 제어.
- 영상 판단을 PLC, 릴레이, 경광등 또는 부저 입력으로 변환하는 프로젝트.
- 원본 영상의 클라우드 업로드를 줄이는 로컬 단일 채널 모니터링.
납품 경계와 위험
이 시스템은 법정 배출 측정기가 아니며 링겔만 등급이나 오염물질 농도를 출력하지 않고 환경 검사·인증·감독 결론을 대신하지 않습니다. 노출, 화이트 밸런스, 압축, 날씨, 조명, 배경, 시야와 거리가 색상 결과에 영향을 줍니다.
MCP2221A는 논리 레벨만 제공하며 고전류 부하를 직접 구동할 수 없습니다. PLC, 릴레이, 경광등과 부저에는 전압, 전류, 절연, 고장 안전 요구에 맞는 드라이버 또는 광절연과 현장 전기 검수가 필요합니다.
기준 콘솔은 관리 LAN용입니다. 외부 공개 시 인증, 접근 제어, HTTPS, 카메라 자격 증명 보호와 로그 마스킹이 필요합니다. 운영 전 현장 검수 데이터를 고정하고 Precision, Recall, 오경보 빈도, 누락 범위, 복구 시간, 장시간 시험과 재시작 시험을 정의해야 합니다.
자주 묻는 질문
검은 연기는 어떻게 판단합니까?
세 프레임으로 연기를 먼저 검출한 뒤 주간에 색상을 분류합니다. 연기, 검은 연기, 신뢰도 임계값, 확인 시간이 모두 필요합니다.
야간에도 검은 연기를 분류합니까?
납품 기준은 야간에 연기만 판단하고 색상은 unknown_night입니다. 야간 색상 분류에는 별도 데이터와 검수 규칙이 필요합니다.
링겔만 농도 모니터링과 동일합니까?
아닙니다. 검은 연기는 영상 색상 라벨이며 링겔만 등급, 입자 농도 또는 법정 배출 결과를 제공하지 않습니다.
기존 카메라와 PLC에 연결할 수 있습니까?
RTSP/HTTP, 코덱, 해상도, FPS, 네트워크와 PLC 입력 사양을 받아 평가합니다. 출력에는 적절한 구동과 절연이 필요합니다.
다른 RK3588 장치에서 재검증이 필요합니까?
필요합니다. OS, OpenCV/FFmpeg, 스트림, 네트워크, 온도, 부하와 시야가 달라지므로 빌드, 기능, 오경보, 누락, 출력과 장시간 테스트를 반복해야 합니다.

Online
Phone
WeChat
Top