Closed noirmist closed 5 years ago
Hi, sorry for delay in response. I concentrated another task and expect someone suggest better solution. (nobody? anyone else?)
max_delta_ij
determines which term (delta^i_k1*delta^j_k2-p)
includes as loss for limb.
Assume index of grid i=(p_i,q_i)
is responsible for k1
, all elements in max_delta_ij[ei][i] (which consists of 'local grid') should be 1.
So, I (about 4 month ago) used max_pooling_2d
as maximum filter.
On the other hand, It seems, my implementation does not care the case i=(p_i,q_i)
is NOT responsible for k1
. I made jupyter notebook to study the case.
consider_max_delta_ij.ipynb.zip
This shows that, strictly speaking, my implementation is not correct because it includes many terms as loss for limb (but does not lack. So it works fine for now). This notebook (maybe) contains better suggestion.
Thank you for your kindness notebook!!
Hi, I have question about your code. I looking the implementation of max_delta_ij and it looks weird. In the paper, max_data_ji is a maximum value of d1 and d2 which indicate responsibility for the person. Here I found the implementation in your code. the source code From Line 196 to LIne 210
In my opinion, the max_pooling_2d is not directly compare each component of delta^i_k1 and delta&j_k2 which consist of the edges. Does anyone tell me, the reason why this implementaion works fine or is this right implementation?
Thanks.