реализация дистанционного преобразования данного бинарного изображения

Я ищу реализацию python для преобразования расстояния данного двоичного изображения. Никакой существующий библиотечный код не должен использоваться.

Это то, что я сделал до сих пор -

#function to find EUCLIDIAN distance to nearest wall from current cell
def find_len_to_nearest_wall(img,row,col):

#read binary image (white(walls) - [255,255,255], black(free space) - [0,0,0])
img = cv2.imread("4_1_map.png")
img_new = [[0 for n in len(img[0])] for n2 in len(img)]
#distance transforming...
for row in img:
    for col in row:
        if img[row][col][0] == 255:
            num = numpy.uint8(255)
        else:
            num = numpy.uint8(find_len_to_nearest_wall(img,row,col))
        img_new[row][col] = [num,num,num]

Как мне начать писать функцию, чтобы найти длину до ближайшей стены/препятствия


person kaysri    schedule 22.12.2016    source источник
comment
Добро пожаловать в StackOverflow. Пожалуйста, прочтите и следуйте инструкциям по публикации в справочной документации. по теме и как спросить подать заявку здесь. StackOverflow не является сервисом кодирования или обучения.   -  person Prune    schedule 22.12.2016
comment
В частности, «у меня проблема» — это не вопрос. Какая проблема? Какие ошибки вы получаете?   -  person Anne Gunn    schedule 22.12.2016
comment
Я не знаю, как начать! Пожалуйста, помогите :)   -  person kaysri    schedule 22.12.2016
comment
Я не знаю никаких реализаций Python. Однако в дублирующей ссылке, которую я разместил, есть много реализаций на других языках, которые можно очень легко транскрибировать на Python. Один алгоритм, который я успешно использовал, — это алгоритм Фельценшвальба и Хаттенлохера с линейной временной сложностью (O(N)).   -  person rayryeng    schedule 23.12.2016