Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.12.23;
Скачать: [xml.tar.bz2];

Вниз

с неимоверной силой лезут 255 в данные   Найти похожие ветки 

 
vilfred   (2002-12-10 16:49) [0]

При считывании яркости пикселя с картинки(высота и ширина VidH и VidW соответственно) в двумерный массив:

const VidH=255; VidW=377;
....
if OpenDialog1.Execute then
begin
BitMap1 := TBitMap.Create;
BitMap2 := TBitMap.Create;
try
BitMap1.LoadFromFile(OpenDialog1.FileName);
BitMap2.Assign(BitMap1);
BitMap2.Dormant;
BitMap2.FreeImage;
Image3.Canvas.Draw(0,0,BitMap2);
BitMap2.Monochrome := true;
BitMap2.ReleaseHandle;
for x:=0 to VidH-1 do begin
ee:=x;
for y:=0 to VidW-1 do begin
mas[x][y]:=byte(Image3.Canvas.Pixels[x,y])// and $ff);
end;
end;
Canvas.TextOut(100,295,
IntToStr(byte(Image3.Canvas.Pixels[112,160] and $ff)));
finally
BitMap1.Free;
BitMap2.Free;
end;
Graphic;
end;

каждая строка начинает заполняться значением 255 на 241 шаге цикла, когда заполняю массив mas, т.е. недостача данных выходит ну и соответственно все идет лесом :(( ...

Но, если я делаю одномерный массив(и соответственно цикл по этому делу один) строчкой mas[x]:=byte(Image3.Canvas.Pixels[x,150]) вместо показанной mas[x][y]:=byte(Image3.Canvas.Pixels[x,y]), то заполнение данных происходит нормально, т.е. 255 нигде не появляются. Картинка нормальная, не битая, содержит 255 градаций серого. В той точке изображения где беру при помощи byte(Image3.Canvas.Pixels[x,y]) нет значения 255, т.е. не белый цвет... т.е. в массиве на данной строке и в данном столбце не должно быть значения 255.

Может быть дело в способе загрузки картинки? Или может быть надо взять цвет пикселя как-то по другому?


 
Subfire   (2002-12-10 17:17) [1]

mas глоюальная или локальная?
если локальная попробуй:
FillChar(mas,sizeof(mas),0);


 
vilfred   (2002-12-10 18:17) [2]

да это я похоже с размерами массива наглючил че-то очень сильно... вроде как все теперь сходится. т.е. это моя ошибка.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.12.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.008 c
1-74728
Netcoder
2002-12-13 08:12
2002.12.23
Перевод TColor в HEX


1-74726
Gennadiy
2002-12-13 12:16
2002.12.23
Работа с текстом


1-74648
Sergey Pavl
2002-12-09 08:02
2002.12.23
встроенный ассемблер


1-74724
Separator
2002-12-12 08:16
2002.12.23
Простое число


1-74730
Витьок
2002-12-14 10:39
2002.12.23
TTreeView





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский