modify render

This commit is contained in:
jiegeaiai 2024-11-26 06:14:03 +08:00
parent 0760f92064
commit 496bb7fe55

View File

@ -24,7 +24,7 @@ def cal_box(inv_m, p):
def img_warp_back_inv_m(img, img_to, inv_m):
h_up, w_up, c = img.shape
# h_up, w_up, c = img_to.shape
# mask = np.ones_like(img).astype(np.float32)
# inv_mask = cv2.warpAffine(mask, inv_m, (w_up, h_up))
# inv_img = cv2.warpAffine(img, inv_m, (w_up, h_up))
@ -33,10 +33,13 @@ def img_warp_back_inv_m(img, img_to, inv_m):
# img_to[:, :, :3][mask_indices] = inv_img[mask_indices]
# else:
# img_to[inv_mask == 1] = inv_img[inv_mask == 1]
# cv2.imwrite('./full.png', img_to)
# return img_to
cv2.imwrite('./face.png', img)
tx = inv_m[0][2]
ty = inv_m[1][2]
h_up, w_up, _ = img.shape
_, _, c = img_to.shape
# cv2.imwrite('./face.png', img)
tx = int(inv_m[0][2])
ty = int(inv_m[1][2])
inv_m[0][2] = 0
inv_m[1][2] = 0
@ -51,21 +54,21 @@ def img_warp_back_inv_m(img, img_to, inv_m):
w_up = int(rp[0] - lp[0])
h_up = int(rp[1] - lp[1])
print(f'src_x:{w_up}, src_y:{h_up}')
# print(f'src_x:{w_up}, src_y:{h_up}')
inv_m[0][2] = 0
inv_m[1][2] = 0
inv_m[1][2] = abs(lp[1])
mask = np.ones_like(img, dtype=np.float32)
inv_mask = cv2.warpAffine(mask, inv_m, (w_up, h_up))
inv_img = cv2.warpAffine(img, inv_m, (w_up, h_up))
cv2.imwrite('./combine_frame.png', inv_img[inv_mask == 1])
cv2.imwrite('./combine_frame-1.png', img_to)
if c == 4:
# img_to[30:h, 30:w][:, :, :3] = img
img_to[:, :, :3][inv_mask == 1] = inv_img[inv_mask == 1]
img_to[ty:(h_up + ty), tx:(w_up + tx)][:, :, :3][inv_mask == 1] = inv_img[inv_mask == 1]
else:
img_to[inv_mask == 1] = inv_img[inv_mask == 1]
# cv2.imwrite('./full1.png', img_to)
return img_to
@ -126,7 +129,7 @@ class PyGameUI:
self.screen_.blit(self.background_display_, (0, 0))
self._update_human()
if self._human_image is not None:
self.screen_.blit(self._human_image, (760, -300))
self.screen_.blit(self._human_image, (0, -300))
fps = self.clock.get_fps()
pygame.display.set_caption('fps:{:.2f}'.format(fps))