ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 Add noise

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

View 
UserName:
Password:
Format  Bold Italicized Underline  Align Left Centered Align Right  Horizontal Rule  Insert Hyperlink   Browse for an image to attach to your post Browse for a zip to attach to your post Insert Code  Insert Quote Insert List
   
Message 

 

Emoji
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Black Eye [B)]
Frown [:(] Shocked [:0] Angry [:(!] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

 
Check here to subscribe to this topic.
   

T O P I C    R E V I E W
Ruekaka Posted - Apr 07 2012 : 16:52:34
Hi everybody,

is there any method available to add noise to an image (like in PhotoShop)?

Thanks for any hint.

With kind regards,
Ruediger Kabbasch

With kind regards,
Ruediger Kabbasch
7   L A T E S T    R E P L I E S    (Newest First)
xequte Posted - Sep 07 2023 : 20:57:58
Hi Adrian

Proc.Random() supports a Gaussian distribution of noise. Are you looking for more than that?

https://www.imageen.com/help/TImageEnProc.Random.html

Nigel
Xequte Software
www.imageen.com
AdrianKnowles Posted - Nov 14 2013 : 16:42:19
Dear Ruediger,
although this message topic is a little old I wondered if you had come across any pascal code which introduced Gaussian noise into an image? The idea Patrick had is very good however I need to vary the amount of noise within an image.

Kind regards,
Adrian
Ruekaka Posted - Apr 12 2012 : 07:42:04
Thanks for your code Fabrizio,

now I have even different options to add noise.

Perfect.

With kind regards,
Ruediger Kabbasch
fab Posted - Apr 12 2012 : 00:28:45
You could implement Patrick idea with:

ImageEnView1.IO.LoadFromFile('input.jpg');

ImageEnView1.LayersAdd();
ImageEnView1.CurrentLayer.Transparency := 128;
ImageEnView1.CurrentLayer.Operation := ielOverlay;
ImageEnView1.Proc.Random();
ImageEnView1.Proc.ConvertToGray();
ImageEnView1.LayersMergeAll();

Instead of Random() you could load the film grain image.
Ruekaka Posted - Apr 11 2012 : 09:36:51
Thanks for the link. This is a good idea.

With kind regards,
Ruediger Kabbasch
Patrick Quinn Posted - Apr 10 2012 : 01:17:36
Hi Ruekaka and fabrizio,

You could always have a layer with a photo of real chemical film grain and use that to add noise to an image.

This method gives better results than Photoshop's artificial noise.

There is an article at http://www.tipsfromthetopfloor.com/psc/psc13.php which explains how to do this in Photoshop.

There is a link in the article to a photograph of film grain you can use. You could embed the photo in your .exe file

regards

Patrick
fab Posted - Apr 09 2012 : 00:15:59
Hi,
I'm sorry, there isn't a method to add noise to an image.