Проект COM-Client
Данный проект (COM-Client) создан для демонстрации возможностей класса TNet, который реализован в проекте COM-Server.
Возможности cледующие:
| 1.) Ведение лог-файла |
Вообще, для ведения лог-файла, используется метод TNet.WriteReport() и вызывается он в различных методах класса TNet для того, чтобы было понятно что именно происходит в настоящий момент. Сам компонент для мониторинга этого лог-файла реализован в проекте Controls в виде DLL, т.к. используется в различных проектах (COM-Client и CharacterRecognition);
По этому лог-файлу можно построить график (точнее, два графика: ошибка/время_обучения (см. Рис. 5) & процент_правильно_распознанных_изображений/время_обучения (см. Рис. 6)) ( TNet.GetGraphOfTeach() ); |
| |
| 2.) Работа с кэшем изображений |
Создание кэша изображений (*.DAT) из файлов изображений ( TNet.BuildCache() );
Выгрузка изображений из файла кэша изображений ( TNet.LoadCache() & TNet.DumpCache() ); |
| |
| 3.) Обучение сетки |
Собственно, процедура обучения сетки ( TNet.Teaching_MonteKarlo() ) ... с возможность запустить, притормозить и остановить поток обучения, а также, изменить приоритет этого потока;
Сохранение текущего состояния (например, в момент обучения) сетки в файл ( TNet.SaveToFile() );
Создание отчёта по изображениям символов (из тестового DAT-файла кэша) которых распознать не удалось ( TNet.GetAlphabetError() );
Имеется возможность изменить информацию, подаваемую на вход сетки. Т.е., если по стандарту методом TNet.SetInputValues_bmp() на вход подаются только значения пикселей изображения символа, то можно методом TNet.SetInputValuesFUNC() установить собственную функцию для подачи входной информации на сетку; |
| |
| 4.) Функционирование сетки |
Рисование (см. Рис. 2) и разнообразная трансформация изображения символа (перемещение, вращение и изменение толщины линии контура символа) & сохранение/загрузка отрисованного изображения (Эти возможности предоставляются средствами проекта ImgProcess, реализованного ввиде DLL);
Наблюдение за от'preprocess'инным изображением, а также изменение скрипта ( TNet.GetProcessingScript() ), по правилам которого происходит подобная нормализация (см. Рис. 3);
Функционирование сетки (нужно нажать на кнопку с изображением мозга) ( TNet.SetInputValues_btm() & TNet.Functioning());
Мониторинг результатов функционирования сетки (см. Рис. 4): собственно, сам результат (символ) ( TNet.GetStatus() ) и состояния возбуждения нейронов выходного слоя ввиде графика ( TNet.GetGraphOfStatus() );
|
P.S.
Две здоровые кнопки на Рис 1. - это кнопки сохранения настроек программы (см. файл config_cc.ini).
|