Как выполнить медианную сортировку массива n x m x 3 в python - PullRequest
0 голосов
/ 21 мая 2019

У меня есть изображение.Каждое изображение хранится в облаке точек.Это облако точек имеет форму 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)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...