畳み込みニューラルネットワークCNNモデルに基づく密集密度推定・解析システムの開発・構築

駅、地下鉄、スーパーマーケット、その他の混雑した場所など、多くの現実のシナリオでは、スタンピードなどの危険なイベントが発生しがちです.管理レベルでは、群衆密度のタイムリーな分析と計算、および潜在的な危険のタイムリーな警告により、災害を防ぐことができます. Yu Weiran、ここでは主にこのアイデアに基づいて、畳み込みニューラル ネットワーク モデルに基づく密集した群衆の推定および分析システムを開発および構築します。まず、レンダリングを見てください。

 データセットを見てください:

 注釈ファイルは次のとおりです。

 タグ解析ビルドは次のように実装されます。

def parseLabel(labelData="train_label.csv", save_path="labelMap.json"):
    """
    解析构建标签数据
    """
    df = pd.read_csv(labelData)
    data = df.values.tolist()
    data_dict = {}
    for one_list in data:
        one_path, one_label = one_list
        data_dict[one_path] = one_label
    with open(save_path, "w") as f:
        f.write(json.dumps(data_dict))

モデル パラメータのスクリーンショットは次のとおりです。

 最初に 500 回の反復をトレーニングしたところ、損失は次のように変化しました。

 全体的な状況は安定していますが、トレーニング サイクルを増やしたように、最終的な損失値はまだ比較的大きいです. ここでは、次のように 3000 ラウンドの反復計算が構築されます。

この時点で、すでに効果が非常に優れていることがわかります。ログは次のとおりです。

 次に、トレーニング済みのモデルを読み込み、次のようにテスト分析を実行します。

 評価指標から判断すると、効果は依然として非常に良好です。

モデルの使用を容易にするために、次のようなビジュアル インターフェイスがここで開発されました。

 モデルの計算根拠を直感的に分析するために、ヒートマップは次のように GradCAM に基づいて計算されます。

おすすめ

転載: blog.csdn.net/Together_CZ/article/details/130078394