[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Считывание штрих-кода с изображения
Страницы: 1, 2, 3
Zzepish
Если изображение генерирую через php-все вери гуд! Ибо сравниваю цвет- если черный- то 1, если другой- записываю ноль!
Однако я совсем не прикидываю, что делать с фотками , я вообще вез понятия ,что делать!
Zzepish
user posted image
dron4ik
врятли на пхп такое можно сделать... Знаю что на пайтоне возможно.... стоит покопать)

_____________
Ex3m.com.ua — Активный образ жизни
sergeiss
Цитата (Zzepish @ 5.03.2013 - 21:53)
Если изображение генерирую через php-все вери гуд! Ибо сравниваю цвет- если черный- то 1, если другой- записываю ноль!
Однако я совсем не прикидываю, что делать с фотками , я вообще вез понятия ,что делать!

ОК.

imagecreatetruecolor() - и ты из фотки делаешь изображение, с которым можно работать в ПХП.

Далее можно поработать с функцией imagefilter(); используя разные параметры, ты можешь преобразовать фотку к такому виду, где ты сможешь проанализировать что-то. По сути дела, как в обычном графическом редакторе. С той лишь разницей, что тут будешь делать это всё автоматически.

В первом приближении где-то так получается. Короче говоря, надо сводить задачу к том, которую ты уже можешь сделать.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Zzepish
sergeiss
понимаешь в чем дело- проблема в том, что надо сжимать размер фотки! при этом появляются лишние пиксели, и полочки просто начинают налазить друг на друга
sergeiss
А зачем сжимать фотки? Ты уж полностью алгоритм распиши, что ли. Глядишь, у кого-нибудь умная мысль и появится.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Zzepish
index.php

<img src="convert.php?str=<?php echo $_GET['str'];?>">
<
br>
<?php

$im = imagecreatefrompng("1.png");

///imagefilter($im,IMG_FILTER_GRAYSCALE);
$res='';

for($i=0;$i<=imagesx($im);$i++){

$rgb = imagecolorat($im, $i, 20);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;

//echo $r.' '.$g.' '.$b.'<br>';

if($r===0 && $g===0 && $b===1) $res.='1';

else $res.='0';

}


//echo $res.'<br>';
//$res=preg_replace('/^[0]+|[0]+$/','',$res);

echo $res;

////preg_match_all('/[0-1]{8}/',$res,$res);

///var_dump($res);

?>

convert.php

<?php
$convert['0']='00000000';
$convert['1']='00000001';
$convert['2']='00000010';
$convert['3']='00000011';
$convert['4']='00000100';
$convert['5']='00000101';
$convert['6']='00000110';
$convert['7']='00000111';
$convert['8']='00001000';
$convert['9']='00001001';
$convert['a']='00001010';
$convert['b']='00001100';
$convert['c']='00001101';
$convert['d']='00001110';
$convert['e']='00001111';
$convert['f']='00010000';
$convert['g']='00010001';
$convert['h']='00010010';
$convert['i']='00010100';
$convert['j']='00011000';
$convert['k']='00110010';
$convert['l']='00011010';
$convert['m']='00011100';
$convert['n']='00011101';
$convert['o']='00011110';
$convert['p']='00011111';
$convert['q']='00100000';
$convert['r']='00100001';
$convert['s']='00100010';
$convert['t']='00100100';
$convert['u']='00101000';
$convert['v']='00110000';
$convert['w']='00110001';
$convert['x']='00110010';
$convert['y']='00110100';
$convert['z']='00111000';
$convert['A']='01000000';
$convert['B']='01000001';
$convert['C']='01000010';
$convert['D']='01000100';
$convert['E']='01001000';
$convert['F']='01010000';
$convert['G']='01100000';
$convert['H']='01100001';
$convert['I']='01100010';
$convert['J']='01100010';
$convert['K']='01100100';
$convert['L']='01101000';
$convert['M']='01110000';
$convert['N']='01110001';
$convert['O']='01110010';
$convert['P']='01110100';
$convert['Q']='01111000';
$convert['R']='01111001';
$convert['S']='01111010';
$convert['T']='01111100';
$convert['U']='01111101';
$convert['V']='01111110';
$convert['W']='01111111';
$convert['X']='10000000';
$convert['Y']='10000001';
$convert['Z']='10000010';
$convert[' ']='10000100';
$convert['!']='10001000';
$convert['side']='11000011';



function convert($string){
$converted='';
global $convert;

for($i=0;$i<strlen($string);$i++){

$converted.=str_replace($string[$i],$convert[$string[$i]],$string[$i]);

}

return $converted;
}

function to_code($str,$image,$color_b,$color_w){

for($z=0;$z<strlen($str);$z++){

if($str[$z]=='1') imageline($image,($z+1),0,($z+1),40,$color_b);

else imageline($image,($z+1),0,($z+1),40,$color_w);


}

}



$codestring=$convert['side'].convert($_GET['str']).$convert['side'];

file_put_contents('1.txt',$codestring);

$h=40;
$w=strlen($codestring)+1;


$image=imageCreate($w,$h);

$color_line_w=imagecolorallocate($image,255,255,255);

$color_line_b=imagecolorallocate($image,0,0,0);

to_code($codestring,$image,$color_line_b,$color_line_w);

header('Content-type:image/jpeg');
imagepng($image,'1.png');
imagepng($image);
imagedestroy($image);
?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.