Open StRigaud opened 2 years ago
@haesleinhuepf Can you remove the kernels that cannot be nd form that list and kernel which are not relevant for now. thanks!
Hi @StRigaud ,
I just updated the list in your post above. I'm keeping two sub-lists here. The first should be done, but those are no filters, those are matrix operations and fancy stuff. The entries in the second list may be dropped:
Special but cool to have (no real 2D/3D filters)
Potentially to drop entirely
Question on kernel to be dropped
slice_by_slice kernels: cons: They are redundant with classic operation applied at dimension n-1 in a loop so can be dropped pros: They avoid host code from user and speed up some development are they useful or not?
watershed: is it because the algorithm is not optimized? is there a way to make it relevant to keep in GPU?
watershed: is it because the algorithm is not optimized? is there a way to make it relevant to keep in GPU?
It doesn't work well. See here:
slice_by_slice kernels: cons: They are redundant with classic operation applied at dimension n-1 in a loop so can be dropped pros: They avoid host code from user and speed up some development are they useful or not?
I think we can have the same functionality, e.g. by setting sigma_z=0
, e.g. in the Gaussian blur. Plus, this would also work with X and Y, without having to maintain extra kernels
I think we can have the same functionality, e.g. by
setting sigma_z=0
, e.g. in the Gaussian blur. Plus, this would also work with X and Y, without having to maintain extra kernels
indeed, though i will need to update kernels already pushed. ToDo later then :smile:
Continuing on the slice_by_slice
kernels:
slice_by_slice
kernel in the top list (e.g. count_nonzero_pixels_slice_by_slice_sphere_3d_x.cl
)?erode_box
, dilate_box
, detect_maxima
, etc.) or do we want the same behaviour (3d data but z=0 mean slice_by_slice process)?From top post list
Raising the interest of keep the following kernels:
maximum_projection_3d_2d_x.cl
:arrow_right: same as maximum_z_projection
minimum_projection_3d_2d_x.cl
:arrow_right: same as minimum_z_projection
Raising interest of keeping, or renaming and extend to all axis (x,y,z) the following kernels:
mask_stack_with_plane_3d_x.cl
:arrow_right: mask volume with binary plane along depth axismultiply_stack_with_plane_3d_x.cl
:arrow_right: multiply volume with plane along depth axismultiply_stack_with_scalars_x.cl
:arrow_right: multiply volume with vector along depth axismaximum_of_masked_pixels_3d_2d_x.cl
:arrow_right: masked max projection along depth axisminimum_of_masked_pixels_3d_2d_x.cl
:arrow_right: masked min projection along depth count_non_zero_projection_3d_2d_x.cl
:arrow_right: same as other (min,max,sum,etc.) projection kernel :question: kernels:
excludeLabelsOnEdges_3d_x.cl
:arrow_right: contains multiple kernel inside, should maybe split them?There are other kernels left in the list, a quick discussion about them could be nice to see how to extend them to clEsperanto standards.
Related to #16 Checked one are either under process or finished. Once processed remove
_xd
and_x