You use 'image' for 2D and 'volume' for 3D?  Is this consistent?  Maybe confusing ('a 3D image')?  Rename to 'quantize_positive_2d' etc?