该代码对于一张图进行heatmap图片的可视化,会存储coco的17组关节点图片,即每一个heatmap包含图片中所有人体的同一关节点位置。
##生成heatmap
import os
import numpy as np
import json
import cv2
from itertools import groupby
import random
from matplotlib import pyplot as plt
dataset_dir = "D:/send_paper/COCO val2017/val2017/"
dataset_save = "D:/send_paper/COCO val2017/result/"
def normalization(data):
_range = np.max(data) - np.min(data)
return (data-np.min(data))/_range*255
def CenterLabelHeatMap(img,kpts,sigma):
img_height,img_width ,_ = img.shape
# img = cv2.applyColorMap(img,3)
X1 = np.linspace(1,img_width,img_width)
Y1 = np.linspace(1,img_height,img_height)
heatmap=list()
result = 0
for num in range(len(kpts)):
[X,Y]=np.meshgrid(X1,Y1)
X = X-kpts[num][0]
Y = Y-kpts[num][1]
D2 = X*X+Y*Y
E2 = 2.0*sigma*sigma
Exponent = D2/E2
heatmap_1 =np.exp(-Exponent)
heatmap_1 = normalization(heatmap_1)
heatmap_1 = np.array(hea

本文介绍了一种基于COCO数据集的人体关键点热力图生成方法,通过Python和OpenCV实现,针对每张图片中的17组人体关键点,生成对应的热力图,用于可视化人体姿态估计结果。

1118

被折叠的 条评论
为什么被折叠?



