Subject | Hash | Author | Date (UTC) |
---|---|---|---|
create success | 99951e32fedfcdb2ebc272d1678c094998c499f8 | Thai Thien | 2020-12-18 17:17:34 |
bike_video_frame_404_dccnn_t3 | bbbd4ad319ac87586afc6ce6675adcf9d5f41fef | Thai Thien | 2020-12-18 15:53:26 |
fix load model stuff | 8c5c9c985fb747dc6392c86aa5f49282f8d12297 | Thai Thien | 2020-12-18 15:44:21 |
import comet first | dd4426221a95d0916c8cc7c02c7587ada1d910b5 | Thai Thien | 2020-12-18 15:41:59 |
predict on frame from video | ec39a97372a15ad75811fdb3417d2e48078a30b2 | Thai Thien | 2020-12-18 15:40:36 |
fix normalize in data loader | 56a64c14dc62c96aba532d233ff2782414738d05 | Thai Thien | 2020-12-17 15:36:22 |
change gpu 5 | 46d32b3fc05909b61f56389b01c2e50e52937d9b | Thai Thien | 2020-12-16 16:40:47 |
eval_dccnn_bike_video_VID_20201204_133931_404_model_adamw1_bigtail13i_t4_bike20 | 95bb636a0b544b7a72fc4c65acb47472da468766 | Thai Thien | 2020-12-16 16:35:14 |
eval_dccnn_bike_video_VID_20201204_133931_404_model_adamw1_bigtail13i_t3_bike20 | 27740a0e21ca42490f5cfe516b2453f7be3a2483 | Thai Thien | 2020-12-16 16:17:12 |
batch 2 | 85433ffd51070572d7e743a2b4ef53f340b658d4 | Thai Thien | 2020-12-15 16:57:56 |
reduce batch size 3 | d2f145009c06f5e6e6e1e0270878ae275b611c2f | Thai Thien | 2020-12-15 16:55:46 |
t3 and t4 | 70e09414713ea22800d8e87a0dd984f18406c375 | Thai Thien | 2020-12-15 16:50:32 |
prepare bike 20s q100 | 556a4d8f695ca154a5db42b363a276d7ab233434 | Thai Thien | 2020-12-15 16:46:08 |
VID_20201204_133931_404 | 8264dcb4d5389ed8ef2920eb3419cfc505b6a09c | Thai Thien | 2020-12-13 11:31:10 |
add VID_20201204_133931_404 | a36ba35ca7c54dcf552d17a08fa8c87720ce1c69 | Thai Thien | 2020-12-13 11:30:24 |
print total length on console | 6a956d93489926e99909d234bf4a7b13d39aad56 | Thai Thien | 2020-12-13 11:24:56 |
fix input of save_density_map | dc2f014fdd570909b811ac77629f0c8c0ca156da | Thai Thien | 2020-12-13 11:21:37 |
detach cpu for save_density_map | f41362501a0bc3578de0a48e6cbe97966a66677c | Thai Thien | 2020-12-13 11:19:45 |
predict_video_server pred.detach().cpu().numpy() | 3c23cd51890f8b791be91ad8eb74bdba9ace905a | Thai Thien | 2020-12-13 11:14:51 |
remove stuff | 212a4a703ae301fb90a0f292d8ccf19a1026e071 | Thai Thien | 2020-12-13 11:10:28 |
File | Lines added | Lines deleted |
---|---|---|
dataset_script/combine_img_raw_and_density_map.py | 45 | 0 |
File dataset_script/combine_img_raw_and_density_map.py added (mode: 100644) (index 0000000..d708e75) | |||
1 | import numpy as np | ||
2 | from torchvision.io import write_jpeg, read_image | ||
3 | import torch | ||
4 | from torch import nn | ||
5 | import os | ||
6 | |||
7 | def overlay_img_with_density(img_path, density_map_path, output_path): | ||
8 | img_tensor = read_image(img_path) | ||
9 | density_map_tensor = torch.load(density_map_path) | ||
10 | |||
11 | print(img_tensor.shape) | ||
12 | print(density_map_tensor.shape) | ||
13 | print(density_map_tensor.sum()) | ||
14 | density_map_tensor = torch.from_numpy(density_map_tensor).unsqueeze(dim=0).unsqueeze(dim=0) | ||
15 | print("density_map_tensor.shape", density_map_tensor.shape) # torch.Size([1, 1, 46, 82]) | ||
16 | upsampling_density_map_tensor = nn.functional.interpolate(density_map_tensor, scale_factor=8) / 64 | ||
17 | |||
18 | overlay_density_map = img_tensor.detach().clone() | ||
19 | upsampling_density_map_tensor = (upsampling_density_map_tensor.squeeze(dim=0) / upsampling_density_map_tensor.max() * 255) | ||
20 | overlay_density_map[0] = torch.clamp_max(img_tensor[0] + upsampling_density_map_tensor[0] * 2, max=255) | ||
21 | |||
22 | write_jpeg(overlay_density_map.type(torch.uint8), output_path, quality=100) | ||
23 | |||
24 | def single_image_case(): | ||
25 | density = "/data/my_crowd_image/tmp/PRED_IMG_697.jpg.torch" | ||
26 | img = "/data/my_crowd_image/video_bike_q100/IMG_697.jpg" | ||
27 | output_path = "/data/my_crowd_image/tmp/PRED_OVERLAY_IMG_697.jpg" | ||
28 | overlay_img_with_density(img, density, output_path) | ||
29 | |||
30 | def convert_folder(): | ||
31 | density_folder = "/data/my_crowd_image/bike_video_frame_404_dccnn_t4/" | ||
32 | img_folder = "/data/my_crowd_image/video_bike_q100/" | ||
33 | output_folder = "/data/my_crowd_image/overlay_bike_video_frame_404_dccnn_t4/" | ||
34 | count = 0 | ||
35 | for img_name in os.listdir(img_folder): | ||
36 | img_dir = os.path.join(img_folder, img_name) | ||
37 | density_dir = os.path.join(density_folder, "PRED_" + img_name +".torch") | ||
38 | output_dir = os.path.join(output_folder, "PRED_OVERLAY_" + img_name) | ||
39 | overlay_img_with_density(img_dir, density_dir, output_dir) | ||
40 | print("done " + img_name) | ||
41 | count+=1 | ||
42 | print("count ", count) | ||
43 | |||
44 | if __name__ == "__main__": | ||
45 | convert_folder() |