PDA

View Full Version : تبدیل عکس رنگی به سیاه و سفید



محسن بابائی
جمعه 28 مهر 1385, 04:33 صبح
سلام
من تازه Delphi را شروع کردم و خیلی خوب نمی تونم باهاش کار کنم.
الان هم یه برنامه می خوام که بتونه یه عکس رنگی را سیاه و سفید کنه.
ممنون

Touska
جمعه 28 مهر 1385, 20:59 عصر
سلام
من تازه Delphi را شروع کردم و خیلی خوب نمی تونم باهاش کار کنم.
الان هم یه برنامه می خوام که بتونه یه عکس رنگی را سیاه و سفید کنه.
ممنون
اگه منظورتون gray scale هست :


procedure gray_scale ( clips : tbitmap ) ;
var
x , y : integer ;
p0 : sline ;
gray : integer ;
clip : tbitmap ;
begin
clip := tbitmap.create ;
clip.Assign ( clips ) ;
clip.pixelFormat := pf24bit ;
for y := 0 to clip.Height-1 do
begin
p0 := clip.ScanLine [ y ] ;
for x:= 0 to clip.Width-1 do
begin
Gray := Round ( ( p0 [ x ].B*0.114+p0 [ x ].G *0.587+p0 [ x ].R*0.299 ) ) ;
p0 [ x ].R := gray ;
p0 [ x ].G := gray ;
p0 [ x ].B := gray ;
end ;
end ;
form1.image2.picture.Graphic := clip ;
clip.Free ;
end ;


ولی اگر منظورتون Black and white هست باید از Threshold و یک چیز دیگه استفاده کنید.

موفق باشید :)

محسن بابائی
سه شنبه 02 آبان 1385, 06:02 صبح
سلام . ممنون
اگه ممکنه این کد را توی برنامه به کار ببرید و بفرستید . چون که گفتم من دلفی را تازه شروع کردم.