Возможность редактирования 2d изображения numpy массива один раз, но не более одного раза - PullRequest
0 голосов
/ 01 апреля 2020

Я создаю инструмент для программы, которая просматривает китайский текст и копирует отдельные символы.

Предполагается, что мой инструмент go просматривает каждое изображение и проверяет, есть ли какие-либо символы. были пропущены. Первая часть моего инструмента использует координаты для удаления символов из бинаризованного изображения, поэтому вторая половина может проверить, есть ли большие коллекции темных пятен, которые обозначают пропущенный символ.

Это первая часть это вызывает проблемы. Первая переменная называется «полосой» и представляет собой изображение (уже преобразованное в двоичную форму), шириной около 100 пикселей и высотой 1500 пикселей (отсюда и «полоса»). Вторая переменная называется «координаты», список строк в формате «9,4 9,79 69,79 69,4».

Вот как выглядел оригинальный код:

for i in coordinates:
    currentcoords = re.split(' ', i) #These three lines reformat the unwieldy coordinate system to something more usable. We only need the top left and bottom right.
    coorda = re.split(',', currentcoords[0])
    coordb = re.split(',', currentcoords[2])
    strip[coorda[0]:coordb[0],coorda[1]:coordb[1]] = False #Sets the area within the coordinates to False so they don't register as characters outside of the bounding boxes.

Проблема не в том, что он не работает; это работает отлично ... Для первого персонажа. В последующих итерациях l oop, хотя область вокруг первого символа остается исправленной, последующие действия не имеют никакого эффекта. Это происходило надежно в течение нескольких сотен итераций кода, пока я его устранял.

Я много раз искал, что может быть причиной проблемы. Я перезапустил компьютер, проконсультировался с некоторыми другими людьми и даже попытался поставить строку, чтобы изменить дату изображения самостоятельно на l oop.

Кто-нибудь знает, что может быть причиной ошибки? Если я не могу заставить это работать, мне придется go попиксельное, что является гораздо более запутанным решением, которое мне бы хотелось.

РЕДАКТИРОВАТЬ: У меня сейчас работает программа, используя попиксельный метод. Я все еще хотел бы, если бы кто-то мог помочь выяснить, почему это не работает, так что я могу отредактировать код, чтобы сделать его более эффективным.

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