PyTorch 참고서 OpenPose 샘플 코드 추가 단편
참조 서적
만들면서 배우십시오! PyTorch의 발전 딥 러닝
오가와 유타로
htps // 보오 k. my ゔぃ. jp / e c / p 로즈 cts /에서 원하는 l / i d = 104855
htps : // 기주 b. 코 m / 유타로 오가와 / py와 rch_ 아 d ゔ 센세 d
htps : // m / 곧 / ms / 07253d12b1fc72 16 아바
목적
Stage가 복수 있는 이유의 조사(loss를 복수회 산출하는 이유. 특징량을 복수회 입력하는 이유.).
⇒1단째~6단째로, 추정 결과가 어느 정도 다른가, 육안으로 확인한다.
각 Stage의 출력 시각화 조각
「4-7_OpenPose_inference.ipynb」를 이하와 같이, 수정·추기해 주세요.
셀 수정 전
predicted_outputs, _ = net(x)
셀 수정 후
predicted_outputs, intermediate_outputs = net(x)
셀 추가
def convert_to_numpy_and_resize(val, size, size2):
# 画像をテンソルからNumPyに変化し、サイズを戻します
val = val.detach().numpy().transpose(1, 2, 0)
val = cv2.resize(val, size, interpolation=cv2.INTER_CUBIC)
val = cv2.resize(val, size2, interpolation=cv2.INTER_CUBIC)
return val
셀 추가
size2 = (oriImg.shape[1], oriImg.shape[0])
pafs_list = []
heatmaps_list = []
for i in range(6):
pafs_list.append(convert_to_numpy_and_resize(intermediate_outputs[i*2][0], size, size2))
heatmaps_list.append(convert_to_numpy_and_resize(intermediate_outputs[i*2+1][0], size, size2))
셀 추가
def display_overlay_img(featImg, oriImg, anoNo, i):
featImg = featImg[:, :, anoNo]
featImg = Image.fromarray(np.uint8(cm.jet(featImg)*255))
featImg = np.asarray(featImg.convert('RGB'))
# 合成して表示
blend_img = cv2.addWeighted(oriImg, 0.5, featImg, 0.5, 0)
plt.subplot(1,3,i+1)
plt.imshow(blend_img)
# plt.show()
def display_heatmap_and_paf(heatmaps, pafs, oriImg, anoNos):
plt.figure(figsize=(6.4*3, 4.3*1))
display_overlay_img(heatmaps, oriImg, anoNos[0], 0)
display_overlay_img(heatmaps, oriImg, anoNos[1], 1)
display_overlay_img(pafs, oriImg, anoNos[2], 2)
plt.show()
셀 추가
print("左肘heatmap、左手首heatmap、PAF")
for i in range(6):
print("Stage" + str(i+1))
display_heatmap_and_paf(heatmaps_list[i], pafs_list[i], oriImg, (6, 7, 24))
셀 추가
print("右膝heatmap、右足首heatmap、PAF")
for i in range(6):
print("Stage" + str(i+1))
display_heatmap_and_paf(heatmaps_list[i], pafs_list[i], oriImg, (9, 10, 5))
출력 결과(1례째: 왼쪽 팔꿈치 heatmap, 왼손목 heatmap, PAF)
출력 결과(2례째: 오른쪽 무릎 heatmap, 오른발목 heatmap, PAF)
Reference
이 문제에 관하여(PyTorch 참고서 OpenPose 샘플 코드 추가 단편), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/take0212/items/f5a01eb79fe8c395005a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)