List of commits:
Subject Hash Author Date (UTC)
print y and y_pred shape 90ab90465dabc4bd1171f4500eb01c45cca97420 Thai Thien 2020-12-06 15:23:09
ccnn baseline f02c3084f28f811879e36e9a309993d468535dc3 Thai Thien 2020-12-06 15:08:11
ccnn shb and sha d1d4152ada2c5dfc18c65299f32cb12935b90fe4 Thai Thien 2020-12-06 14:46:36
sha 3196ece275027e4d032a0bddb84ce310c15f2380 Thai Thien 2020-12-06 13:46:28
abs clamp 524c6f7196908527367ddcbfc340107e4092cc6e Thai Thien 2020-12-06 11:16:12
use abs instead of ssim 92226d63c9732e66bf50f0b78e61f915ad2bce77 Thai Thien 2020-12-06 10:56:56
claim both y and y_pred d1f6764a691fc2f2f1adc63ae65d63a8347d8a45 Thai Thien 2020-12-06 10:52:14
clamp 0.0 5569f7dad3c9e792e65636bb29b66a84ff250282 Thai Thien 2020-12-06 10:46:57
dataloader target crop e41c17147de7c05f213329009c7662fbb2f1dc91 Thai Thien 2020-12-06 10:43:12
clamp min = 0 5245898e5282aa4cdc4b6539e68cb36a1c2d0c1f Thai Thien 2020-12-06 10:40:47
fix metric 9739b99b836657377eb9dce05fafeef4a90546e9 Thai Thien 2020-12-06 10:38:37
eval density d02232a419cd22bc79e0325c1c6791a7e5fc15b0 Thai Thien 2020-12-06 10:37:22
. 926498e13908770b072aeca0ccecbf5d3a64808e Thai Thien 2020-12-06 10:27:13
if self.dataset_name == "shanghaitech_non_overlap_test_with_densitygt" and not self.train: ca2bf6f9372ccdd5b880f2dd7be2023840afdd1d Thai Thien 2020-12-06 10:24:21
yeah forgot to change ds name bfdf3cfe27be5f51de300e231b6b79f903a71624 Thai Thien 2020-12-06 10:17:37
eval_only mode should not save bf03ec80b43e070501c043f7428d55d8409b960c Thai Thien 2020-12-06 10:14:22
now we output density map for testing fb1f9f1c8abeb2311f0637db5f7b4c4ca4b43810 Thai Thien 2020-12-06 10:12:01
predict 8a312e6bcbe7a8b726cf1a01497db09bc21fea51 Thai Thien 2020-12-06 09:57:58
go ssim and psnr d9b0d9c0417835c51ea59c66d85b8821480d0357 Thai Thien 2020-12-06 09:36:21
t4 624c9948c2099f16bd66f30a0c18093367b8a113 Thai Thien 2020-12-06 03:59:20
Commit 90ab90465dabc4bd1171f4500eb01c45cca97420 - print y and y_pred shape
Author: Thai Thien
Author date (UTC): 2020-12-06 15:23
Committer name: Thai Thien
Committer date (UTC): 2020-12-06 15:23
Parent(s): f02c3084f28f811879e36e9a309993d468535dc3
Signer:
Signing key:
Signing status: N
Tree: a0275017480c690418b991456bb720132963d5e7
File Lines added Lines deleted
crowd_counting_error_metrics.py 17 1
data_flow.py 5 5
playground/try_to_do_overlay.py 1 0
File crowd_counting_error_metrics.py changed (mode: 100644) (index f8d2d31..26be2d3)
1 1 from __future__ import division from __future__ import division
2 2
3 3 import torch import torch
4 import torch.nn.functional as F
4 5 import math import math
5 6 from ignite.exceptions import NotComputableError from ignite.exceptions import NotComputableError
6 7 from ignite.metrics.metric import Metric from ignite.metrics.metric import Metric
 
... ... class CrowdCountingMeanSSIMabs(Metric):
129 130 # y = torch.clamp_min(y, min=0.0) # y = torch.clamp_min(y, min=0.0)
130 131 y = torch.abs(y) y = torch.abs(y)
131 132 y_pred = torch.abs(y_pred) y_pred = torch.abs(y_pred)
133 print("CrowdCountingMeanSSIMabs ")
134 print("y_pred", y_pred.shape)
135 print("y", y.shape)
136
132 137
133 138 ssim_metric = piq.ssim(y, y_pred) ssim_metric = piq.ssim(y, y_pred)
134 139
 
... ... class CrowdCountingMeanPSNRabs(Metric):
161 166 # y = torch.clamp_min(y, min=0.0) # y = torch.clamp_min(y, min=0.0)
162 167 y = torch.abs(y) y = torch.abs(y)
163 168 y_pred = torch.abs(y_pred) y_pred = torch.abs(y_pred)
169 print("CrowdCountingMeanPSNRabs ")
170 print("y_pred", y_pred.shape)
171 print("y", y.shape)
172
164 173 psnr_metric = piq.psnr(y, y_pred) psnr_metric = piq.psnr(y, y_pred)
165 174
166 175
167 176
177
168 178 self._sum += psnr_metric.item() * y.shape[0] self._sum += psnr_metric.item() * y.shape[0]
169 179 # we multiply because ssim calculate mean of each image in batch # we multiply because ssim calculate mean of each image in batch
170 180 # we multiply so we will divide correctly # we multiply so we will divide correctly
 
... ... class CrowdCountingMeanSSIMclamp(Metric):
194 204 y = output[1] y = output[1]
195 205 y_pred = torch.clamp_min(y_pred, min=0.0) y_pred = torch.clamp_min(y_pred, min=0.0)
196 206 y = torch.clamp_min(y, min=0.0) y = torch.clamp_min(y, min=0.0)
197
207 print("CrowdCountingMeanSSIMclamp ")
208 print("y_pred", y_pred.shape)
209 print("y", y.shape)
198 210
199 211 ssim_metric = piq.ssim(y, y_pred) ssim_metric = piq.ssim(y, y_pred)
200 212
 
... ... class CrowdCountingMeanPSNRclamp(Metric):
225 237 y_pred = torch.clamp_min(y_pred, min=0.0) y_pred = torch.clamp_min(y_pred, min=0.0)
226 238 y = output[1] y = output[1]
227 239 y = torch.clamp_min(y, min=0.0) y = torch.clamp_min(y, min=0.0)
240 print("CrowdCountingMeanPSNRclamp ")
241 print("y_pred", y_pred.shape)
242 print("y", y.shape)
243
228 244
229 245 psnr_metric = piq.psnr(y, y_pred) psnr_metric = piq.psnr(y, y_pred)
230 246
File data_flow.py changed (mode: 100644) (index 764d967..74ec54c)
... ... def load_data_shanghaitech_non_overlap_test_with_densitygt(img_path, train=True,
657 657
658 658 gt_file = h5py.File(gt_path, 'r') gt_file = h5py.File(gt_path, 'r')
659 659 target = np.asarray(gt_file['density']) target = np.asarray(gt_file['density'])
660 target1 = cv2.resize(target,
661 (int(target.shape[1] / target_factor), int(target.shape[0] / target_factor)),
662 interpolation=cv2.INTER_CUBIC) * target_factor * target_factor
663 # target1 = target1.unsqueeze(0) # make dim (batch size, channel size, x, y) to make model output
664 target1 = np.expand_dims(target1,
660 # target1 = cv2.resize(target,
661 # (int(target.shape[1] / target_factor), int(target.shape[0] / target_factor)),
662 # interpolation=cv2.INTER_CUBIC) * target_factor * target_factor
663 # # target1 = target1.unsqueeze(0) # make dim (batch size, channel size, x, y) to make model output
664 target1 = np.expand_dims(target,
665 665 axis=0) # make dim (batch size, channel size, x, y) to make model output axis=0) # make dim (batch size, channel size, x, y) to make model output
666 666 return img_origin, target1 return img_origin, target1
667 667
File playground/try_to_do_overlay.py changed (mode: 100644) (index 187fcc6..61c2012)
... ... print(img_tensor.shape)
13 13 print(density_map_tensor.shape) print(density_map_tensor.shape)
14 14 print(density_map_tensor.sum()) print(density_map_tensor.sum())
15 15 density_map_tensor = torch.from_numpy(density_map_tensor).unsqueeze(dim=0).unsqueeze(dim=0) density_map_tensor = torch.from_numpy(density_map_tensor).unsqueeze(dim=0).unsqueeze(dim=0)
16 print("density_map_tensor.shape", density_map_tensor.shape) # torch.Size([1, 1, 46, 82])
16 17 # module = nn.UpsamplingBilinear2d(scale_factor=8) # module = nn.UpsamplingBilinear2d(scale_factor=8)
17 18 # upsampling_density_map_tensor = module(density_map_tensor) # upsampling_density_map_tensor = module(density_map_tensor)
18 19 upsampling_density_map_tensor = nn.functional.interpolate(density_map_tensor, scale_factor=8)/64 upsampling_density_map_tensor = nn.functional.interpolate(density_map_tensor, scale_factor=8)/64
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/hahattpro/crowd_counting_framework

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/hahattpro/crowd_counting_framework

Clone this repository using git:
git clone git://git.rocketgit.com/user/hahattpro/crowd_counting_framework

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main