|
35 / 35 / 10
Регистрация: 24.11.2011
Сообщений: 309
|
|
Охарактеризовать объект по каким-либо признакам его строения14.10.2012, 23:01. Показов 14736. Ответов 222
Метки нет (Все метки)
Добрый день!
Стоит задача охарактеризовать объект по каким-либо признакам его строения. Есть графики (построенные по набору расстояний от центра объекта к каждой точке его периметра) для объектов известных нам типов, каждому типу присущи свои особенности формы (всевозможные ямки и т.д.). У некоторых типов могут присутствовать сразу несколько особенностей. Как научить программу искать эти особенности, если они могут проявляться на разных масштабах? Какие-то маски накладываются растягивающиеся или как? Примеры:
0
|
|
| 14.10.2012, 23:01 | |
|
Ответы с готовыми решениями:
222
По каким признакам мы выбираем себе пару По каким диагностическим признакам в шлифе можно отличить кварц от ортоклаза? |
|
|
|
| 17.10.2012, 17:54 | |
|
gumi250, не обязательно ведь подходить к задаче сугубо с одной стороны, на то оно и исследование.
![]() Можно ведь научить комп анализировать кривые на подобие, прогнать через него базу образцов и посмотреть, какие сходства он нашел и идентичны ли образцы, в которых было обнаружено подобие. В этом случае программу можно рассматривать, как инструмент, расширяющий возможности визуального анализа человека - это инструмент исследования и к цели оного исследования он может относиться весьма и весьма посредственно, главное, чтоб работал бодро.
0
|
|
|
35 / 35 / 10
Регистрация: 24.11.2011
Сообщений: 309
|
||||
| 17.10.2012, 19:57 [ТС] | ||||
|
gumi250, опровергнуть или подтвердить, я имел ввиду, что мне нужно представить наивысшую точность распознавания, которая у меня получится (если она невелика, то это "опровержение", грубо говоря). Смысл на данном этапе исследовательский (моя НИР). Добавлено через 2 минуты
0
|
||||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,449
|
|
| 17.10.2012, 21:55 | |
|
Набор образцов - это несколько безразмерных кривых каждая из которых представляет особый и интересный для вас случай.
Тяжелая задача - это значит комп может надолго над ней призадуматься. Я не знаю насколько длинная будет анализируемая кривая, не знаю сколько образцов и не знаю в каком диапазоне масштабов могут быть представлены данные образцы на анализируемой кривой. Гладкое перемещение "окна" анализа изменяющегося по размеру по кривой с проверкой на соответствие каждому из образцов при определенных условиях может превратиться в весьма длительную задачу. Добавлено через 1 минуту ...и если честно я не очень понял что же мы собственно ищем) про формы клеток - это понятно, но это ведь в другой теме было, а тут - какие-то кривые...
0
|
|
|
35 / 35 / 10
Регистрация: 24.11.2011
Сообщений: 309
|
||
| 17.10.2012, 22:05 [ТС] | ||
|
в другой теме мы искали наиболее похожую форму на клетки для неизвестной (полностью форму).
а тут я хочу использовать базу для программирования особенностей формы клеток (ну допустим, что у 1го типа ямки широкие, у 2го узкие, у третьего обе ямки сразу). ну и не сравнивать неизвестную клетку со всеми известными (т.к только у меня их 1100, а это небольшая выборка), а посмотреть какие есть особенности, после чего окончательно определится тип или сузится его поиск из 10 до, допустим, 3.
0
|
||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,449
|
|
| 17.10.2012, 22:15 | |
|
участок или не участок - до вашего объяснения я даже не задумывался об этом) так вы периметр клетки из прошлой темы развернули в линию и теперь эту линию анализируете? однако странное упрощение задачи - в предыдущей задачи рабочее решение не было найдено? я в клетках на уровне школы конечно соображаю, но внутренний голос говорит что не шибко хорошо по форме периметра клетки они узнаваться будут - так хлам всякий в виде жгутиков или ресничек или вообще выпячиваний всяческих технологических при поглощении материала натыкан - если по форме еще туда сюда отличить туфельку от амебы или шарика какого-нибудь то по мохнатой границе которая как у медузы особой формы не имеет... что то я сомневаюсь, но я не спец в предметной области - сказали возможно, значит возможно. образец - это может быть либо характерный участок используемый при классификации и присущий нескольким родсвенным клеткам (например, рога есть у коровы и газели и мы будем смотреть есть ли у клетки рога что бы сузить поиск к "рогатым"). это может быть и полная развертка периметра клетки - тогда будет сравниваться с конкретной клеткой. главное что бы ее форма действительно была характерной - если мы ждем что руки у этой клетки будут расти четко по бокам головы и четко перпендикулярно туловищу, то клетка со слегка согнутыми руками уже будет признана совершенно непохожей..
0
|
|
|
35 / 35 / 10
Регистрация: 24.11.2011
Сообщений: 309
|
|||
| 17.10.2012, 22:24 [ТС] | |||
|
vxg, ну тут распознаются ядра клеток, они имеют особенное строение у определенных типов.
в предыдущем варианте точность была около 55%, из чего и появилась задача "упростить" поиск схожей клетки.
0
|
|||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,449
|
|
| 17.10.2012, 22:57 | |
|
если образец выбран верно (схожесть имеется и образцовая кривая построена по результатам усреднения нескольких кривых), то и для других неизвестных клеток если они имеют ту же схожесть будет автоматически выдаваться бииип - в чем вопрос то? кривые приводятся к безразмерному виду, окно поиска скользит по кривой и пробует узнать ее захватывая участки разных размеров - если там есть такая особенность алгоритм ее словит.
0
|
|
|
35 / 35 / 10
Регистрация: 24.11.2011
Сообщений: 309
|
|||
| 17.10.2012, 23:46 [ТС] | |||
|
vxg, не очень понял про безразмерный вид, то есть неважно, сколько точек в периметре 700 или 250, нужно 1й задать 0, последней - 1?
0
|
|||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,449
|
|
| 18.10.2012, 00:48 | |
|
1 да. пусть мы знаем о некой особенности формы кривой позволяющей сказать "о! это эбола! или одна из ее вариаций. или что то из того же семейства". для того что бы метод действовал мы берем несколько кривых этого самого отличительного признака (например, особая форма "рогов") для эболы, ее вариаций и представителей того же семейства. несколько во-первых для статистики. а во вторых - так можно определиться с допуском. приводим все кривые в безразмерный вид (это когда вне зависимости от фактической длинны кривой она переводится в условные координаты / нормируется к диапазону от 0 до 1 - фактически координаты кривой становятся выраженными не в пикселях или микронах а в долях от области определения кривой, то же самое делаем с координатой игрек - теперь она будет выражена в долях от максимального перепада координаты игрек и иметь минимум равный нулю). усредняем эти кривые (просто найдя среднее значение координаты игрек для каждого икса). получаем предельное допустимое отклонение сравнив каждый из образцов с полученной средней кривой.
2 образец то безразмерный а вот анализируемая кривая на которой мы хотим найти наш образец вполне размерна. мы выделяем на ней "окно" (выхватываем кусочек кривой), приводим содержимое "окна" в безразмерный вид и сравниваем с образцами. по скольку масштаб неизвестен приходится пробовать разный размер окна (например, рога могут варьироваться в диапазоне от 1 до 50 нм). а поскольку положение рогов на кривой не известно нам приходится скользить окном по ней выискивая эти самые рога. еще раз хотелось бы отметить что это должны быть какие-то неизменные и очень хорошо воспроизводимые от клетки к клетке особенности. если это будут именно "рога" то фиг мы определим это - ведь рога могут быть по разному изогнуты, толще или тоньше, волнистые и т.п. - человеческий глаз на капче (преднамеренно деформированная картинка вывешиваемая на сайтах для защиты от роботов) поймет что это рога но программа в таком виде о котором я пишу - нет. для нее - чистая математика: будет волнистый рог или рог изогнутый влево вместо права она скажет - нет, это не рог. форма ядра клетки наверное может служить таким признаком, хотя оно ведь может быть под разным углом, или как то так, не знаю как они там плавают, я их только в книжке видел ![]() Добавлено через 19 секунд 1 да. пусть мы знаем о некой особенности формы кривой позволяющей сказать "о! это эбола! или одна из ее вариаций. или что то из того же семейства". для того что бы метод действовал мы берем несколько кривых этого самого отличительного признака (например, особая форма "рогов") для эболы, ее вариаций и представителей того же семейства. несколько во-первых для статистики. а во вторых - так можно определиться с допуском. приводим все кривые в безразмерный вид (это когда вне зависимости от фактической длинны кривой она переводится в условные координаты / нормируется к диапазону от 0 до 1 - фактически координаты кривой становятся выраженными не в пикселях или микронах а в долях от области определения кривой, то же самое делаем с координатой игрек - теперь она будет выражена в долях от максимального перепада координаты игрек и иметь минимум равный нулю). усредняем эти кривые (просто найдя среднее значение координаты игрек для каждого икса). получаем предельное допустимое отклонение сравнив каждый из образцов с полученной средней кривой. 2 образец то безразмерный а вот анализируемая кривая на которой мы хотим найти наш образец вполне размерна. мы выделяем на ней "окно" (выхватываем кусочек кривой), приводим содержимое "окна" в безразмерный вид и сравниваем с образцами. по скольку масштаб неизвестен приходится пробовать разный размер окна (например, рога могут варьироваться в диапазоне от 1 до 50 нм). а поскольку положение рогов на кривой не известно нам приходится скользить окном по ней выискивая эти самые рога. еще раз хотелось бы отметить что это должны быть какие-то неизменные и очень хорошо воспроизводимые от клетки к клетке особенности. если это будут именно "рога" то фиг мы определим это - ведь рога могут быть по разному изогнуты, толще или тоньше, волнистые и т.п. - человеческий глаз на капче (преднамеренно деформированная картинка вывешиваемая на сайтах для защиты от роботов) поймет что это рога но программа в таком виде о котором я пишу - нет. для нее - чистая математика: будет волнистый рог или рог изогнутый влево вместо права она скажет - нет, это не рог. форма ядра клетки наверное может служить таким признаком, хотя оно ведь может быть под разным углом, или как то так, не знаю как они там плавают, я их только в книжке видел
1
|
|
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
||
| 18.10.2012, 02:24 | ||
|
А выложите свои данные (образцы кривых). Хотите все выкладывайте, а хотите скажем типов 5 по 20 кривых на тип.
Добавлено через 11 минут Когда форма кривой не зашумлена, то приведение к безразмерному виду пройдет без проблем 0-минимум кривой, 1-максимум кривой. Но стоит появится выбросу-шуму (ямке или горке) очень узкому но очень большому, который будет задавать максимум или минимумом кривой, то вся кривая уплывет и приведение к безразмерному виду уже будет не столь простым.
1
|
||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,449
|
|
| 18.10.2012, 08:39 | |
|
да, но даже у коров рога имеют чисто индивидуальные особенности заметно сильно отличающие их по форме у разных особей.
по поводу шума - более стойким к помехам будет ранее упомянутый вариант разбиения образца на несколько кусков и нахождения среднего значения для каждого участка - построение столбиков. дополнительная защита от всплесков при формировании образцов обеспечивается тем что они делаются усреднением нескольких эталонных кривых
0
|
|
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
||
| 18.10.2012, 10:06 | ||
0
|
||
|
35 / 35 / 10
Регистрация: 24.11.2011
Сообщений: 309
|
||||||||
| 18.10.2012, 11:31 [ТС] | ||||||||
|
Это все предусмотрено в предыдущей программе, все клетки сравниваются не под определенным углом, а под всеми возможными. все должно работать, из сторонних библиотек вроде нету ничего
0
|
||||||||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,449
|
||||
| 18.10.2012, 11:48 | ||||
|
Добавлено через 7 минут ...что то какой то хлам строится (некоторые картинки пустые, некоторые содержат кривую с разрывами). в добавок прога не может достроить и вылетает...
1
|
||||
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
||
| 18.10.2012, 13:14 | ||
0
|
||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,449
|
|
| 18.10.2012, 13:19 | |
|
видать правильный имадж подсунули или еще какой-то фокус. я просто кинул на форму пустой, воткнул несколько инклудов, добавил косую черту в имя и насоздавал папок в нужном месте - прога завалила диск покоцанными картинками и упала.
1
|
|
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
| 18.10.2012, 13:28 | |
|
Вот мой вариант роги. Правда имедж я убрал. И здесь растянул все до одинаковой ширины. Ну и пути надо поменять.
1
|
|
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
| 18.10.2012, 13:49 | |
|
Вот у меня какие мысли возникли:
0
|
|
|
35 / 35 / 10
Регистрация: 24.11.2011
Сообщений: 309
|
||
| 18.10.2012, 22:52 [ТС] | ||
|
gumi250, задача уже стоит и поменять ее я не могу. просто нужно сделать все, что в моих силах и представить результат. идеальная точность - 100%. надо к ней стремится)
Теперь, как я понимаю, нужно записать отдельно данные "особенностей". Например у типа 7 имеются ямки с острыми углами (из-за того, что ядра клеток будто скучиваются в восьмерку), т.е. нужен инструмент, который считывает данные от начала ямки до ее конца и записывает куда-то. прогнав через него весь 7й тип можно будет через среднее арифметическое (или как??) получить "эталон" этой ямки. как-то так?
0
|
||
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
||
| 19.10.2012, 00:02 | ||
0
|
||
| 19.10.2012, 00:02 | |
|
Помогаю со студенческими работами здесь
40
По каким характерным признакам можно определить респектабельность фирмы-поставщика Прошу объяснить мне почему я не могу задать размер массива с консоли, без его ограничения каким либо числом? Для чисел из файла указать его значение в обратном либо дополнительном коде, либо его инверсию по выбору
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|