程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Raspberry Pi和Python-OpenCV-TensorFlow卷積神經網絡熱成像人物檢測

編輯:Python

構建邏輯,定期從紅外攝像機捕獲快照,對其進行標准化,並將其存儲在某處。標記圖片(檢測到人物存在/檢測到人物不存在)並在其上訓練模型。在樹莓派上部署模型並運行定期針對新捕獲的圖像進行檢測,房間裡的人是否存在。

物料清單

通訊選擇

系統准備

捕捉圖像

現在我們已經准備好所有的硬件和軟件,讓我們配置以定期捕獲相機圖像並將它們存儲在本地 - 我們稍後將使用這些圖像來訓練我們的模型。

它基本上是可以定期執行並運行一些自定義操作的過程。 讓我們在 config.yaml 中添加一個 cron,它從傳感器獲取圖片並將它們存儲在本地目錄中。 首先,在樹莓派上創建 images 目錄:

然後在 config.yaml 中添加 cron 的邏輯:

cron.ThermalCameraSnapshotCron:
cron_expression: '* * * * *'
actions:
- action: camera.ir.mlx90640.capture_image
args:
image_file: ~/datasets/people_detect/\
${
int(__import__('time').time())}.jpg
grayscale: true

標記圖像

一旦您捕獲了足夠多的圖像,就可以將它們復制到您的計算機上,標記它們並訓練模型。現在等待我們的是無聊的部分——手動將圖像標記為正面或負面。 我使用一個腳本讓這項任務變得不那麼乏味,該腳本允許您在查看圖像時以交互方式標記圖像,並將它們移動到正確的目標目錄。 在本地計算機上安裝依賴項並克隆存儲庫:

訓練模型

from tensorflow.keras.preprocessing.image import
ImageDataGenerator
# 30% of the images goes into the test set
generator = ImageDataGenerator(rescale=1./255, validation_
split=0.3)
train_data = generator.flow_from_directory(dataset_dir,
target_size=image_size,
batch_size=batch_size,
subset='training',
class_mode='categorical',
color_mode='grayscale')
test_data = generator.flow_from_directory(dataset_dir,
target_size=image_size,
batch_size=batch_size,
subset='validation',

執行模型

建立自動化流程

使用上述模型構建安全監控

源代碼

部署模型

參閱 - 亞圖跨際


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved