удаление пикселей с картинки

Статус
В этой теме нельзя размещать новые ответы.

Valenok

Новичок
удаление пикселей с картинки

Осваиваю gd

Есть картинка белого цвета
На ней местами разбросаны чёрные пиксели.
Как их перекрасить в белые?

Делал так:

PHP:
<?
// создание
$newwidth = 120;
$newheight = 30;

$thumb = imagecreatetruecolor($newwidth, $newheight);

for($i=0;$i<200;$i++)
 imagesetpixel($thumb,rand(0,$newwidth),rand(0,$newheight),$black);

// Получается картинка
// Предположим что фон белый, пиксели чёрные.
// Я сократил код немного


// Далее мне нужно удалить те пиксели которые не соприкасаются с другими
// Тоесть пиксели которые сами по себе


// пиксели картинки в массив
for ($i = 0; $i < $newwidth; $i++){
    
        for ($j = 0; $j < $newheight; $j++){
        $gu[$i][$j] = (imagecolorat ($thumb, $i, $j)); 
            
        }            
    }




// Удаляем отдельные от мира пиксели

for ($a=0; $a<count($gu); $a++){
for ($b=0; $b<count($gu[$a]); $b++){
	if($gu[$a][$b]==0) continue;
	if(@$gu[$a-1][$b-1]>0 && @$gu[$a-1][$b]>0 && @$gu[$a-1][$b+1]>0 && @$gu[$a][$b-1]>0 && @$gu[$a][$b+1]>0 && @$gu[$a+1][$b+1]>0 && @$gu[$a+1][$b-1]>0 && @$gu[$a+1][$b]>0){ imagesetpixel($thumb,$a,$b,$white); $gu[$a][$b]=0; }
}
}
Но чтото не получается.
Не удаляются отдельные пиксели.
Ошибок не выдаёт, кроме
Notice: Undefined offset: -1

даже если повторить код несколько раз, всё равно не удаляется.
В чём заключается проблема, подскажите пожалуйста.
 

Фанат

oncle terrible
Команда форума
а не проще белым залить всю кортинко?

-~{}~ 24.05.07 14:02:

а вообще, конечно, ответ тут только один:
ОТЛАЖИВАТЬ НАДО СВОЮ ПРОГРАММУ.
причем - САМОСТОЯТЕЛЬНО. А не просить дядю с форума.
 

Valenok

Новичок
Блин, если бы у самого мозгов хватало понять что к чему, не просил бы дядю ..
Проще, но это не то что я пытаюсь сделать.
Мне нужно чтоб там где два пикселя вместе оказались (соприкасаются) - их не стирать.

Направь хоть как нибудь в нужную сторону пожалуйста ..
 

stalxed

Новичок
эхх капча распознователь! как я мечтаю освоить эту сферу! автору респект! сам летом займусь ей!
 

Фанат

oncle terrible
Команда форума
впервые встречаю человека, который так мечтательно пишет о том, что мечтает стать уродом
 

AmdY

Пью пиво
Команда форума
Valenok, проблемма номер один - учи технический английский, или пользуйся словарём, два - учись оформлять код, правильная организация кода облегчает его понимание, три - учи алгоритмизацию.
 

Valenok

Новичок
=)
Ну направьте же в нужное русло.
Как отлаживать или что
 

Crazy

Developer
Внимание, вопрос: ты видишь в своем коде операции вычитания? Если нет -- шагом марш в указанном выше направлении. Если видишь -- шагом марш править код.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху