Подскажите прогу для анализа контрастного рисунка

durka82

То есть его надо как минимум оцифровать в массив точек по разнице контраста.

Tatiana09

В смысле по разнице контраста? По шкале Grayscale? Любой математический пакет умеет импортировать bmp или jpg изображение как массив точек.
Например, в Математике для этих целей я использую следующую конструкцию:
Import["Имя и путь к файлу"][[1, 1]]

Если изображение в Grayscale, то сразу получаю матрицу интенсивностей.

durka82

Да, спасибо, это оно :)
Осталось теперь это всё обработать.
Как можно быстро просуммировать по условию по столбцам получившийся массив?
Или только циклами это всё делать?

durka82

В общем вроде это всё получается :)
Но уж больно медленно оно работает :(
1500 точек обрабатываются по несколько минут.
А мне надо для 150000 посчитать.
Наверное надо будет оставить на ночь...
п.с.: что-то я видно увлёкся определениями, из-за чего долго считалось.
Сделал напрямую - считает полную секунды (ну или мб я ещё где протупил).

mkrec

Если ты подробнее сформулируешь задачу (что конкретно делаешь/что хочешь в итоге, на каком языке, в какой среде, каким алгоритмом есть шансы, что помогут сэкономить время

Tatiana09

просуммировать по условию по столбцам получившийся массив
Опять не вкурил, что ты имеешь в виду... Тебе нужно просто посчитать сумму по столбцам? Или сумму элементов в столбцах, удовлетворяющих определенным условиям?
Подсчет суммы столбца (например, 5-го):
<< Statistics`DataManipulation`
RawData=Import["Имя файла"][[1, 1]];
Total[Column[RawData, 5]]

Если требуется еще выполнение определенных условий:
<< Statistics`DataManipulation`
RawData = Import["Имя файла"][[1, 1]];
Total[Select[Column[RawData, 5], критерий]]

Например, Total[Select[Column[RawData, 5], # < 106 &]] суммирует в пятом столбце только элементы меньше 106

Далее просто загоняем в цикл по столбцам.

durka82

Как раз хотелось сделать без программирования, но в принципе я уже и так всё сделал на Математика :)
Всем спасибо за участие.

durka82

Сделал всё на Table, Map и Total, но наверное можно сделать правильнее по твоему рецепту, спасибо :)
В принципе можно выложить это сюда на поругание, но тогда точно надо будет всё переносить в программинг :grin:
Оставить комментарий
Имя или ник:
Комментарий: