Модераторы: Snowy, Alexeis, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> определить количество(горизонтальных) пикселей 
:(
    Опции темы
kolli
Дата 20.1.2007, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 13.1.2007

Репутация: нет
Всего: нет



Как определить количество(горизонтальных) пикселей в горизонтальной прямой изображенной на рисунке 
PM MAIL   Вверх
gambit
Дата 20.1.2007, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: нет
Всего: 40



Может я тупой, но я не понял вопрос.
1 Кто проводит линию?
2 Если линия это часть рисунка, то тебе ее сначало надо распознать.
А если тебе удалось написать прогу распознования рисунка, то определить кол-во пикселей для тебя не проблема.
PM MAIL ICQ Skype   Вверх
kolli
Дата 20.1.2007, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 13.1.2007

Репутация: нет
Всего: нет



Есть уже готовое изображения рисунка(откройте paint и проведите прямую),где проведенна прямая.Как програмно определить колличество пикселей этой прямой.т.е  длину прямой.
PM MAIL   Вверх
W4FhLF
Дата 20.1.2007, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: нет
Всего: 121



Найти координаты начала прямой, найти координаты конца прямой.  От конца вычесть начало. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
kolli
Дата 20.1.2007, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 13.1.2007

Репутация: нет
Всего: нет



А как найти координаты начала прямой и  найти координаты конца прямой?
PM MAIL   Вверх
W4FhLF
Дата 20.1.2007, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: нет
Всего: 121



Зная цвет и толщину линии просто пройтись попиксельно по изображению и проверить цвета пикселей. Ну это учитывая, что у тебя простое чёрно-белое изображение. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
drkot
Дата 20.1.2007, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

Репутация: нет
Всего: 8



W4FhLF, это весьма "тупой" и ненадежный способ. Так и непонял как после этого вобще линия получится?

Решить такую задачу исключительно алгоритмически очень сложно. и копать надо в сторону OCR.

из более простых методов:
1) определить точку начала линии (ткнуть мышкой, либо используя статистику окресности методом перебота);
2) определить точку конца линии (ткнуть мышкой, либо используя статистику окресности двигаться вдоль линии до момента входа статистики за пределы допусков);

Это в общем виде, реальзация хоть и не сложна, но и не проста. Лучше мышкой.


ЗЫЖ меня честно говоря удивляют люди которые хотят решить математически сложную задачу не имея даже представления об этой задаче (возможно и образования).

For moderators: этот вопрос явно из раздела алгоритмов.

Это сообщение отредактировал(а) drkot - 20.1.2007, 15:51


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
Sunvas
Дата 20.1.2007, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: нет
Всего: 89



Цитата(W4FhLF @  20.1.2007,  14:29 Найти цитируемый пост)
Найти координаты начала прямой, найти координаты конца прямой.  От конца вычесть начало. 

А если линия обрывается?
Цитата(kolli @  20.1.2007,  13:10 Найти цитируемый пост)
Как определить количество(горизонтальных) пикселей в горизонтальной прямой изображенной на рисунке 

Дай более точную характеристику: это "тупо" черная линия на белом фоне или на изображении чего-либо? Она прямая или нарисоавана под углом? Она одна или их несколько? Какова ее толщина?


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
kolli
Дата 20.1.2007, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 13.1.2007

Репутация: нет
Всего: нет



Почему выдает ошибку в  for i := 0 to BytesPerPixel - 1 do
-------------------------------------------------------
[Error] Unit1.pas(44): Undeclared identifier: 'BytesPerPixel'
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
-------------------------------------------------------------
сравнения два изображения:

Код

procedure TForm1.Button1Click(Sender: TObject);
 var
   b1, b2: TBitmap;
   c1, c2: PByte;
   x, y, i,
   different: Integer; // Counter for different pixels 
begin
   b1 := Image1.Picture.Bitmap;
   b2 := Image2.Picture.Bitmap;
   Assert(b1.PixelFormat = b2.PixelFormat); // they have to be equal 
  different := 0;
   for y := 0 to b1.Height - 1 do
   begin
     c1 := b1.Scanline[y];
     c2 := b2.Scanline[y];
     for x := 0 to b1.Width - 1 do
       for i := 0 to BytesPerPixel - 1 do // 1, to 4, dep. on pixelformat 
      begin
         Inc(different, Integer(c1^ <> c2^));
         Inc(c1);
         Inc(c2);
       end;
   end;
 end;


Это сообщение отредактировал(а) Girder - 22.1.2007, 10:25
PM MAIL   Вверх
drkot
Дата 20.1.2007, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

Репутация: нет
Всего: 8



Цитата(kolli @  20.1.2007,  15:55 Найти цитируемый пост)
BytesPerPixel

неописанный идентификатор
Учись читать smile 


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
kolli
Дата 20.1.2007, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 13.1.2007

Репутация: нет
Всего: нет



я это превел,неописанный идентификатор.А как его описать?В исходнике нет.Как я понял он определяет байт в пикселе.
PM MAIL   Вверх
drkot
Дата 20.1.2007, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

Репутация: нет
Всего: 8



Если это стандартная функция то ищи в каком модуле она оприсана.


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
uvita
Дата 19.5.2007, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 19.5.2007

Репутация: нет
Всего: нет



У меня тоже выдает ошибку, может раз нас уже двое все-таки подскажите smile 

P.S. Я нашла подобный пример и там BytesPerPixel = 4, но так у меня тоже не run

PM MAIL   Вверх
drkot
Дата 19.5.2007, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

Репутация: нет
Всего: 8



Ну и в чем проблема?


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
uvita
Дата 20.5.2007, 13:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 19.5.2007

Репутация: нет
Всего: нет



Уже нет проблемы, вернее есть..., но другая как искать не различия, а сходства?
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.0835 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.