Распознование., см. внутри темы... - Сайт про программирование и программирование под linux
Программирование под linux, программирование, языки программирования, книги программирование На сайте представлена информация про программирование в Интернете и работу  

TBitmap
Функция перекрытия двух графических объектов
ProgressBar, заставка программы
Распознование., см. внутри темы...
Перетаскивание картинок с помощью мыши
Движение картинок
form & thread, непонятки
Включение UPGRADE
Webbrowser, замена стандартного ИЕ
Работа с географической картой.
выделить R, G и B компоненты, DirectX
series.clear не работает, график очищается не всегда
Chart не хочет точку больше 1817, ошибка при передаче ординаты 1818
компонент TRichEdit
VRML, Использование VRML
Рисунок с анимацией, какими компонентами
программный MIDI синтезатор, извлечение нот
Оформление интерфейса, не красиво получается...
FileListBox, Examplя
Как определить битрате файла ?
Библиотека типа BASS
TBitmap, Незнаю как использовать функцию
Совмещение, иконок
как просмотреть текущий уровень звука, при помощи TGauge или TProgressBar
MP3
BilleniumSoft, полезная вещь
Как использовать Флеш или Gif анимацию
Как определить цвет BMP-файла?, В определенном углу Bitmep'a...
Быстрый доступ к пикселям (в памяти?(как сделать?), TBitmap->Canvas->Pixels[i][j]=... -slow
Вопрос по поводу блокировок!
плавное усиление громкости, как реализовать?
Как записать звук с микрофона
Как перетаскивать компоненты в Run-Time?
Быстрейшее .., Как быстро вывести рисунок на форму
Webbrowser и цвет пикселя, хочу получить цвет...
Пишу предпросмотра, Нужна помощь имеющих опыт в этом деле
Текст спрайтом, вывод текста без фона
Компонены расшифровки файла миди, Где его можно найти??
Графика не выводится на принтер
Как Вы относитесь к курящим девушкам?
Как получить текст с сообщения?, Нужен исходник!
Интересные еффекты, Где найти ?
Как поменять цвет ?, ...
Условное обозначение железной дороги, Как нарисовать?
Как на канве нарисовать жирную пунктирную линию?, Pen.Style=psDot
Быстродействие графики, Различия функций отображения
Наследование и TBitmap, ООП и графика
Надо написать Мега Пеинт, Собственно сабж...
извpащаться с битмапом
Смена св-в Canvas
КАК ПРОИГРАТЬ MP3 ИЗ РЕСУРСА?, Не сохраняя файл на диск!!!
Помогите дописать программу..., -= Uninstall Key =-
OpenGL: Эффект помехов
Хочу нарисовать линию на имаге, есть точка, нет точки, есть точка и т.д.
иконки не выкалупываются
ПОМОГИТЕ ПОЖАЛУИСТА
Помагите сделать ...., ...Еквалайзер
Рисунок, Что лучше ????
отключение DirectDrawAcceleration
Проблема с медиаплэйером
Конвертировать координаты
Мерцание картинок, как избавиться?
Срочно!!!!! Преобразовать данные из Exel в БД Делф
Надо написать Мега Плеер, Собственно сабж
glGenTextures - Not found :(
Поверхность Безье, Повернуть одну поверхность, а не все!!
OpenGL: работа с камерой
Запись с микрофона, в мп3 файл, Как это сделать?
Как узнать версию DirectX?
громкость звука, TMediaPlayer

Платные хостинги     Раскрутка сайта     Книги по программированию


Распознование., см. внутри темы...

Только здесь 1000 посетителей на Ваш сайт всего за 3 у.е.!

- есть такой компонент Imageдальше по памяти (т.к. Delphi под рукой нету)Код Image.Picture.LoadFormFile(<тут надо написать имя файла>);//работает с bmp-файлами (насчет highlightSyntax('delphiNjEzMT','delphi');открытия jpg поищи, тут где-то вроде обсуждалось)а взять однобитный цвет... ну например так:Код function Get1BitColor(image:TImage;x,y:integer):boolean;begin  result:=(image.canvas.pixels[x,y]=0);//true - черный, false - белыйend;highlightSyntax('delphi0NGJkM','delphi');только надо быть уверенным, что закрашенные точки абсолютно черные (все компоненты - нулевые) иначе надо будет писать более (ненамного) интеллектуальную процедуру отсева...

- на картнике, можно вообще это на мониторе не показывать, если не надоЦитата (Links @ 18.2.2005, 10:23)2) image.canvas.pixels[x,y]=0 - это что он делает?1. берет объект image2. вытаскивает из него объект canvas (используется в том числе и для работы с пикселями)3. вытаскивает из canvas свойство pixels (попиксельный доступ)4. берет значение пикселя с координатами x,y5. сравнивает его с нулем

- а какого они цвета? или какой фон? ведь не обязательно переводить в ч/б... а еще лучше пример картинки приведи... или воспользуйся например нейронной сетью Хемминга... писала правда сама, не оптимизированно, но все же...Код const  iDestSize   = 10;        // размер стороны изображения для распознования, тут сам задай  M           = 10;        // количество классов, т.е. твоих цифер - 0..9 = 10  N = iDestSize*iDestSize; // количество входов  e = -(1/m)/2;            // вес синапсов второго слояtype  TInputNeuron = record    fW: array [0..N-1] of real; // весовые коэфициенты синапсов    fOutput: real;              // выход  end;  TNeuron = record    fOutput: real; // выход    fSum: real;    // взвешанная сумма входов  end;var  InputRow: array [0..M-1] of TInputNeuron; // 1 слой  SecondRow: array [0..M-1] of TNeuron;     // 2 слойhighlightSyntax('delphiyM2JlY','delphi');обучение:Код for i := 0 to m-1 do begin    //здесь в image1 загружай поочередно твою циферку...    for x := 0 to iDestSize-1 do      for y := 0 to iDestSize-1 do        if Image1.Picture.Bitmap.Canvas.Pixels[x, y] <> RGB(255,255,225) then InputRow[i].fW[x*iDestSize+y] := 0.5          else InputRow[i].fW[x*iDestSize+y] := -0.5;  end;highlightSyntax('delphiNDc3OT','delphi');ну а далее распознование:Код var i, j, x, y: integer;    fOutputs: array [0..m-1] of real;    iCount: integer;    fMax: real;    iIndex: integer;begin  for i := 0 to m-1 do begin    InputRow[i].fOutput := 0;    for x := 0 to iDestSize-1 do      for y := 0 to iDestSize-1 do        if Image2.Picture.Bitmap.Canvas.Pixels[x, y] <> RGB(255,255,225) then InputRow[i].fOutput := InputRow[i].fOutput + InputRow[i].fW[x*iDestSize+y]          else InputRow[i].fOutput := InputRow[i].fOutput - InputRow[i].fW[x*iDestSize+y];    if InputRow[i].fOutput >= n/2 then InputRow[i].fOutput := n/2; // выход - через ф-ию линейного порога  end;  (* передаем даные с выходов первого слоя на входы второго и в список     результатов предыдушего прохода распознавания (fOutputs) *)  for i := 0 to m-1 do begin    //fOutputs[i] := InputRow[i].fOutput;    SecondRow[i].fOutput := InputRow[i].fOutput;    //SecondRow[i].fSum := 0;  end;  iCount := 0;  repeat    for i := 0 to m-1 do begin      fOutputs[i] := SecondRow[i].fOutput;      SecondRow[i].fSum := 0;    end;    for i := 0 to m-1 do      for j := 0 to m-1 do        if i = j then SecondRow[j].fSum := SecondRow[j].fSum + SecondRow[i].fOutput          else SecondRow[j].fSum := SecondRow[j].fSum + SecondRow[i].fOutput * e;    for i := 0 to m-1 do SecondRow[i].fOutput := SecondRow[i].fSum;    inc(iCount);  until iCount < 25;  (* определение выйгравшего нейрона *)  fMax := -N;  iIndex := -1;  for i := 0 to m-1 do    if SecondRow[i].fOutput > fMax then begin      fMax := SecondRow[i].fOutput;      iIndex := i;    end;  ShowMessage('цифра: '+IntToStr(iIndex));highlightSyntax('delphijYWM2Y','delphi');

- я и привела пример ее релизации, в интернете очень много доков по нейроным сетям.З.Ы.http://www.ic-graphics.net/images/l/Image-01.bmp - будет отлично распозновать, главное чтобы цифры всегда были в одной и той же позиции.

- С нейронными сетями дело будет глухо. Необходимо хорошее знание высшей математики, Кроме того, изучение их займёт кучу времени.Действительно, сначала стоит перевести в ч/б картинку, а потом уже распознавать.

- Romtekпочему же, по последней картинке видно что автор вполне справился с преобразованием в Ч/Б, ну а дальше пример отлично сработает, если цифру грамотно выделять.а кому интересно, могу сбросить кучи инфы насчет НС, правда в теории только ((

Интернет казино     Онлайн игры     Увеличение члена     Купить DVD


Главная страница | программирование модема | api программирование | чпу программирование | программирование шпаргалки | программирование 1232 | программированию ключей | программирование под linux | электронные учебники программирование | builder c программирование | языки программирования basic | метод динамического программирования | задачи нелинейного программирования | 1с программирование скачать | алгоритмические языки программирования | delphi 7 программирование | проект программирование | borland программирование | программирование pocket pc | кнут искусство программирования | программирование памяти | c программирование скачать | Ссылки

Все про проект программирование