У меня есть изображение.Каждое изображение хранится в облаке точек.Это облако точек имеет форму X x Y x 3. (X и Y - пиксели изображения). Каждая XY-координата содержит 3 значения:
- высота
- смещение отцентр
- расстояние
Я хочу, чтобы каждое значение медианы отфильтровывалось с медианой между всеми значениями для него: высота медианы отфильтрована, медиана смещения отфильтрована и медиана расстояния отфильтрована(Для понимания, я не хочу медиану, я хочу отфильтровать значения с медианным фильтром
#example
shape of the pointcloud: (1080, 1440, 3)
pointcloud:
[[[ -inf -inf inf]
[ -inf -inf inf]
[ -inf -inf inf]
...
[ 35.162777 -42.95221 116.71086 ]
[ 35.23975 -42.95221 116.71086 ]
[ 35.316727 -42.95221 116.71086 ]]
[[ -inf -inf inf]
[ -inf -inf inf]
[ -inf -inf inf]
...
[ 35.162777 -42.875233 116.71086 ]
[ 35.23975 -42.875233 116.71086 ]
[ 35.316727 -42.875233 116.71086 ]]
[[ -inf -inf inf]
[ -inf -inf inf]
[ -inf -inf inf]
...
[ 35.162777 -42.798256 116.71086 ]
[ 35.23975 -42.798256 116.71086 ]
[ 35.316727 -42.798256 116.71086 ]]
...
[[ -inf inf inf]
[ -inf inf inf]
[ -inf inf inf]
...
[ 0.8646584 0.9823799 2.8699393 ]
[ 0.8665513 0.9823799 2.8699393 ]
[ 0.8684441 0.9823799 2.8699393 ]]
[[ -inf inf inf]
[ -inf inf inf]
[ -inf inf inf]
...
[ 0.86821675 0.98832333 2.8817499 ]
[ 0.87011725 0.98832333 2.8817499 ]
[ 0.87201786 0.98832333 2.8817499 ]]
[[ -inf inf inf]
[ -inf inf inf]
[ -inf inf inf]
...
[ 0.86821675 0.99022394 2.8817499 ]
[ 0.87011725 0.99022394 2.8817499 ]
[ 0.87201786 0.99022394 2.8817499 ]]]
Так что я хочу в качестве вывода X x Y x 3 отфильтрованное медианой pointcloud
iзнаю, numpy.median()
имеет аргумент axis
, но я не уверен, правильно ли я делаю это с numpy.median (pointcloud, axis = 0)