>  기사  >  백엔드 개발  >  휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

WBOY
WBOY앞으로
2023-04-11 14:13:031524검색

본 설계에서는 YOLO 표적 탐지 알고리즘, Openpose 제스처 인식 알고리즘, deepsort 추적 알고리즘, MSCNN 군중 밀도 추정 알고리즘을 사용하여 화재 모니터링, 흡연 모니터링, 행동 안전 모니터링, 군중 밀도 모니터링, 마스크 비율 모니터링 및 직원 위치 모니터링. 이 시스템은 지능형 시각적 상호 작용 기술을 사용하며 사용자는 제스처를 통해 시스템을 조작할 수 있어 조작이 편리하고 간결합니다. 다양한 각도와 측면에서 명승지의 보안 관리를 지원하고 명승지의 숨겨진 안전 위험을 줄이고 명승지의 지능적인 건설을 촉진합니다. 이 시스템의 다양한 기능은 데이터의 실시간 전송 및 피드백을 실현하여 정보의 유효성을 보장하며 휴대폰, 컴퓨터, 사물 인터넷 플랫폼 등 다양한 플랫폼에서 실행될 수 있습니다. 진정한 의미의 적용."

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

다양한 알고리즘으로 설계된 다기능 지능형 보안 시스템은 주로 명승지의 화재 예방 및 모니터링, 전염병 예방 및 제어, 관광 안전 위치 파악 등에 사용됩니다. 명승지 가치를 보호하고 지능적으로 건설합니다. 휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

기본 소개

이 시스템은 컴퓨터 멀티미디어 기술, 지능형 영상 분석 기술, 데이터 마이닝 기술 등을 기반으로 관광 명소에 대한 종합적인 보안 관리 시스템을 구축합니다. 명승지 공공 활동 구역의 개인 안전, 산불 예방 관리, 전염병 예방 및 통제 관리 요구에 부응하여 전천후, 고화질, 지능형 영상 감시 시스템을 구축해야 합니다. 현대 관광 명소 안전 관리 요구 사항을 충족하고 대규모 시나리오를 실현하기 위해 파노라마 모니터링을 통해 명승지의 화재, 관광객의 위험한 행동 등 긴급 상황을 감지합니다. 인원의 실시간 위치 확인 및 궤적 쿼리를 실현하고, 비상 상황 발생 시 지도를 플래시 경고와 연결하고 비상 명령을 용이하게 할 수 있습니다. 동시에 인력 관리 및 승객 흐름 분석 시스템을 충족합니다. 관광지가 특정 승객 흐름 용량을 초과하면 적시에 경고를 보낼 수 있습니다. 관광객의 입국을 막고 적절한 관광객 전환을 실시한다. 실제 요구 사항과 스마트 명승지의 시스템 아키텍처 계획을 결합한 관광 명소의 종합 보안 시스템은 지능형 모니터링 시스템, 지능형 시각적 상호 작용, 다각도 및 다방향, 다중 플랫폼 애플리케이션의 네 가지 모듈로 구성됩니다. 화재 모니터링, 흡연 모니터링, 행동 안전 모니터링 및 군중 모니터링을 통합합니다. 밀도 모니터링, 마스크 비율 모니터링, 직원 위치 모니터링 이기종 보안 하위 시스템. 시스템의 전반적인 디자인 아키텍처는 다음과 같습니다.

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법


기본 기능 표시

1. 시스템 개요

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

이 지능형 모니터링 시스템 개발 플랫폼은 Pycharm을 사용합니다. 파이썬 언어는 6개의 주요 시스템으로 나누어집니다.

2. 화재 모니터링 시스템

이 모듈은 실시간 영상 모니터링을 사용하여 영상에 화재가 있는지 분석합니다. 그림에서 볼 수 있듯이 명승지에서 화재가 발생하면 시스템은 신속하게 조기 경보 정보를 전송하고 이를 출동실에 피드백하여 화재를 효과적으로 통제하고 화재 대응 효율성을 높일 수 있습니다. 크게 개선되었습니다.

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

3. 흡연 모니터링 시스템​

명승지 화재 예방을 위해 명승지 내 대부분의 구역은 금연 구역입니다. 이 모듈은 실시간 영상 모니터링을 이용해 영상에 흡연 행위가 있는지 분석한다. 그림에서 볼 수 있듯이 관광객이 흡연하는 경우 시스템은 즉시 조기 경고 메시지를 발송하고 이를 파견실에 피드백하여 관광객 흡연의 안전 위험을 즉시 발견하고 화재를 예방하며 흡연을 방지합니다. 명승지의 안전.

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

4. 행동 안전 모니터링 시스템

관광지 방문 중에는 관광객의 개인 안전을 보호해야 합니다. 이 모듈은 실시간 영상 모니터링을 이용해 영상 속 사람들의 신체 움직임을 분석해, 사진과 같이 '떨어지는' 등의 이상 행동이나 기타 위험한 행동이 발생할 경우 적시에 조기 경보 정보를 발령할 수 있다. 구조 시간을 크게 단축하고, 긴급 상황으로 인한 손실을 줄이고, 관광객의 생명과 재산을 보호할 수 있습니다. 휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

5. 군중 밀도 모니터링 시스템

신종 코로나바이러스 전염병의 영향을 받는 명승지는 명승지의 인구 밀도를 합리적으로 통제해야 합니다. 이 모듈을 통해 명승지의 관광객 인구 밀도에 대한 동적 모니터링을 실현할 수 있으며, 지능적인 분석을 통해 군중 밀도를 시스템 페이지에 실시간으로 표시하여 사용자가 명승지를 관리하고 건강과 생명을 효과적으로 보호할 수 있습니다. 관광객과 직원의 안전을 보장하고 명승지와 전반적인 사회 안정을 유지합니다. 휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

6. 마스크 비율 모니터링 시스템​

신종 코로나 바이러스의 확산을 방지하기 위해 관광지 관련 규정에 따라 관광지에 입장하기 전에 승객을 식별해야 합니다. 이 모듈은 실시간 영상 모니터링을 이용해 영상 속 관광객의 마스크 착용 여부를 분석하고, 각 관광객의 마스크 착용 여부를 표시해 시스템에 결과를 표시하고 현장 마스크 착용률을 실시간으로 표시한다. 관광객과 명승지를 보호하기 위해 명승지의 전염병 예방 작업에 사용됩니다.

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

7. 인력 추적 및 위치 모니터링

이 모듈은 명승지의 실시간 영상 모니터링을 수행하고 영상 속 관광객을 분석 및 식별하며 자동으로 식별 태그를 생성하고 관광 태그의 위치를 ​​기록합니다. 시스템 페이지에서는 현장에 있는 인원수를 모니터링하여 시스템 페이지 왼쪽에 동적으로 표시할 수 있습니다. 사용자가 명승지를 관리하도록 지원합니다.

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

8. 지능적인 시각적 상호 작용

이 시스템은 기존의 마우스 클릭 모듈 적용 방식을 대체할 수 있습니다. 사용자는 마우스와 같은 입력 장치를 사용하지 않고도 시스템과 정보 상호 작용을 완료할 수 있습니다. 사용자는 몸의 움직임을 통해 모듈 선택을 완료할 수 있어 시스템 작동이 더욱 간단하고 편리해졌습니다. (여기에서는 화재 감지 기능만 설계되었으며, 다른 기능은 코드 참조에 따라 작성될 수 있습니다.)

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

관련 알고리즘

1. 타겟 감지 알고리즘​

에서 사용되는 타겟 감지 알고리즘 이 프로젝트는 주로 YOLO 알고리즘이 화재 모니터링, 흡연 행동 모니터링, 직원 위치 추적 및 마스크 비율 모니터링에 사용됩니다. YOLO 표적 탐지 알고리즘은 2단계 표적 탐지 알고리즘의 탐지 효율성이 상대적으로 낮다고 고려하여 일부 학자들은 단일 단계 표적 탐지를 제안했습니다. 2016년 Joseph Redmon 등이 제안했습니다.

2. 표적 추적 알고리즘

이 프로젝트는 인원 위치 추적 시스템에 deepsort 표적 추적 알고리즘을 사용합니다. 이 시스템의 추적 과정은 다음과 같습니다.

(1) 합성곱 신경망을 사용하여 영상 속 보행자를 감지하고 추적합니다.

(2) 비디오 프레임이 입력된 후 먼저 YOLOv3 대상 탐지 네트워크에 들어가 Darknet-53을 통해 특징을 추출합니다.

(3) 두 번째로 업샘플링과 특징 융합이 수행된 후 회귀 분석이 수행됩니다.

(4) 다시, 얻은 예측 상자 정보를 대상 특징 모델링, 매칭 및 추적을 위한 SORT 알고리즘에 입력합니다.

(5) 마지막으로 결과를 출력합니다. 다음 그림은 위치 추적 알고리즘 흐름도입니다.

휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법

3. 군중 밀도 추정 알고리즘

군중 밀도 계산은 이미지 또는 비디오에서 군중의 수, 밀도 또는 분포를 추정하는 것을 의미합니다. 지능형 영상 감시 분석 문제 및 연구 핫스팟은 후속 행동 분석, 혼잡 분석, 이상 탐지, 이벤트 감지와 같은 고급 영상 처리 작업의 기초이기도 합니다. 이 프로젝트는 딥 러닝 방법을 사용하여 군중 밀도 지도를 얻어 군중 수를 추정하고, Python 언어를 사용하여 MSCNN 네트워크를 구축하여 군중 밀도 지도를 실시간으로 생성하여 군중 수를 추정합니다.

4. 자세 추정 알고리즘​

이 프로젝트는 인간 행동 안전 모니터링 시스템에 Openpose의 인간 자세 인식 알고리즘을 사용합니다. Openpose의 자세 인식 기술을 사용하여 서로 다른 팔다리 간의 조정 관계에 대한 분류 알고리즘을 구축하고 서로 다른 분류 알고리즘을 비교하여 최적의 모델을 선택하여 다중 대상의 자세 표시 및 대상 감지를 달성할 수 있는 다중 대상 분류 방법을 구축합니다. 카테고리를 실시간으로 표시합니다.

인터페이스 연산 코드의 일부는 다음과 같습니다:

cap = cv2.VideoCapture(0)
cap.set(3, 1280)
cap.set(4, 720)
detector = HandDetector(detectionCon=0.8)
keys = [["火灾检测", "吸烟检测", "行为安全监测", "人群密度监测", "口罩率检测", "行人定位跟踪"]]
finalText = ""
while True:
success, img = cap.read()
img = detector.findHands(img)
lmList, bboxInfo = detector.findPosition(img)
img = drawAll(img, buttonList)
if lmList:
for button in buttonList:
x, y = button.pos
w, h = button.size
if x < lmList[8][0] < x + w and y < lmList[8][1] < y + h:
cv2.rectangle(img, (x - 5, y - 5), (x + w + 5, y + h + 5), (175, 0, 175), cv2.FILLED)
if l < 30:
if press_state:
cv2.rectangle(img, button.pos, (x + w, y + h), (0, 255, 0), cv2.FILLED)
cv2.putText(img, "start", (x + 20, y + 65),cv2.FONT_HERSHEY_PLAIN, 4, (255, 255, 255), 4)
finalText += button.text
sleep(0.15)
press_state=False
state=True
print(button.text)
text=button.text
else:
press_state=True
if state:
if os.path.exists("img.txt"):
try:
img2 = cv2.imread("img.jpg")
img2 = cv2.resize(img2, (img.shape[1], img.shape[0]))
img = cv2.addWeighted(img, alpha, img2, beta, gamma)
except:
pass
if state:
img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
draw = ImageDraw.Draw(img)
myfont0 = ImageFont.truetype(r'./HGDH_CNKI.TTF', 50)
for button in buttonList:
x, y = button.pos
w, h = button.size
draw.text((500, 180), text, font=myfont0, fill=(0, 0, 0))
img = cv2.cvtColor(np.asarray(img), cv2.COLOR_RGB2BGR)
cv2.imshow("Image", img)
cv2.waitKey(1)

위 내용은 휴일이 다가오고 있습니다! 기술자가 Python을 사용하여 명승지 보안 시스템을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제