mcjDespeckle - PCWin app Remove fireflies in iRay - New! Daz Studio Frontend
also fine for Cycles/Lux/Octane renders
The "fireflies" observed on path-traced renders are distinct from noise in photos
they are usually 1 pixel-wide and quite bright compared to surrounding pixels
my filter takes advantage of this and detects them quite well
HD1080p images are filtered in a fraction of a second ( no real limits on the image size other than your PC's ram )
------
It's a PC-Win Application, .exe
command-line driven but you can also just drag and drop an image on it and it works
>>> instructions and download
https://sites.google.com/site/mcasualsdazscripts7/mcjdespeckle
note: if writing .bat files is really too complicated for you
in a few minutes, I'll post the .bat files discussed in the "manual" in a zip file
i added (Mac?) in the title because as you see below, i may publish the WebGL version someday, which should run in Mac browsers
i
Comments
Wow, another great tool from you. Thanks for sharing.
Casual, I'm unable to see the images. Did you remove the thumbnails?
msvcp140.dll is missing
thanks i thought my app would only need DLLs present on any windows, but apparently ... not
i will recompile it in a way that the dll in question is in the belly of my .exe
(instead of sending people to .dll sites that can be dangerous )
if you mean the images in my Daz3D forum post, they show up for me
but if you dont see them here you'll see them all on my google sites page, because that's where they reside
new version, is bigger 126K instead of 21K - and if i did it correctly, it wont need the services of those DLLs
so it wont run on Vic-20s but may run on Commodore 64's with the extra ram cartridges :)
UPDATE UPDATE UPDATE UPDATE UPDATE UPDATE
The new version should annoy you about missing DLLs because the functionalities from those DLLs are now in the app itself
also, i added a pack of 5 batch files which are easy to figure and edit
thank you mcasual
v2 works nicely
first post pics cannot be seen
thanks for your testing efforts !
i replaced the linked photos by attached ones in my original post
that's my image despeckler, converted into HTML5/WebGL code
running in a Chrome browser on Windows 7
it takes a fraction of a second to process the millions of pixels !
when/if i make this public, it should work on PCs, Macs maybe tablets and phones too
anything with a browser that supports webgl/HTML5 code
for now at least i had to run my Chrome browser with a special code that tells it: "it's safe to let the web page load my disk images"
the annoyances of the internet security state
i would like to use this for picture series of movie clips
could these be worked on in one session ?
lets say your images are named
pic000.png pic001.png ... pic119.png
if you type this in notepad
mcjDespeckle pic000.png movipic000.jpg
mcjDespeckle pic001.png movipic001.jpg
...
mcjDespeckle pic119.png movipic1119.jpg
then you save this under the name PicoMovipic.bat
and Run this batch file (double-left-click on it )
then your 120 pix___.png images will be filtered and saved as
movipic000.jpg movipic001.jpg ... movipic119.jpg
( sometimes i create that type of batch file in excel )
my store worz video was despeckled that way
i may eventually make a daz script that does all this for you ... but not today !
if you can figure what this daz script here does, then feelfree to use it .... in the Daz Scripting Editor panel
for(i=0;i<120;i++)
{
if(i<10) paddedi= "00"+i;
else if(i<100) paddedi = "0"+i;
else paddedi = i;
debug( "mcjDespeckler pic" +paddedi + ".png mypic" + paddedi + ".jpg" )
}
or you could download the text file attached to this post
and do a little search&replace
then save it as myfilterbatchjob.bat
thank you mcasual
i remember you can do that in excel with an increment
will try
my jpg go down from 2mb original size to 300kb
the jpg exporter in my app is gdiplus , i didnt consider the jpg quality/compression
next version will have 100% quality by default and/or a command-line switch to set it how you like
in the meantime you could specify png as the output format, even if your input file is jpeg it will work
there's also bmp, gif and .tif you can try
ex:
mcjDespeckle myfile.jpg myfile.tif
incidentally, i despeckled a 24 frames animation today!
cold you please just for testing render this to a movie file in daz and look at the ram behaviour ?
i see the ram stay as high as it can and cannot get rid of it even if i declare only few cores for daz
even if i delete everything in the scene
you cannot work any further then and i have to restart daz studio
i opened a ticket for this and need some assistence
i render to movie just for quick testing animations
the ram behaviour with image series is not like this
I'll write a Daz Script front-end (maybe someday a blender front end ) for the despeckler
the first time you run it, you specify the location of mcjDescpeckle on your hard disk
then you can select 1 image to despeckle
if the image is part of a series of images, you'll have the option of despeckling the whole series
you'll also be able to specify the despeckling strength and the output image format, which by default will be the same as the input image format
I rendered many scenes as movie files
usually in uncompressed format because i convert them to gif later
no memory problems so far
i still use DS4.9.0.63 and have 8G or ram
my video card has .... 2G
renderers like iRay and Cycles need to upload all your images to the video card
so if you use a Genesis figure and her many 4Kx4K pixel images are in the scene, sometimes it doesn't fit in the video card memory
and can do mean things like crash the renderer and leave it in a non-responsive state
in the iRay render settings itself there are some settings like "Environment Lighting Resolution" which may influence memory usage ( though maybe in that case it's just the render time that is affected )
and in the NVidia iRay render settings, in the Advanced tab there's the "Texture Compression" settings panel
by reducing those settings value i think your big Genesis3 textures get shrunk before being sent to the video card
----
also, i often use Windows Task Manager to destroy the zombie-daz-studios that didn't die when i used and closed them
sometimes there's 2 zombie Daz Studios holding on to memory and who knows, maybe the video card or the iray renderer
--------
another thing : some Codecs have a tendency to crash when you try to use them to save your avi/movie file
i had this happen a few times, and i can never remember which ones are safe and which ones are not
so i save them as uncompressed videos or as series of images
then i use VirtualDub to create the DivX .avi files
thank you mcasual
i forgot to say these issues are only with interactive mode
movie and image series
photoreal does not behave like that
but very nice you evolve the despeckle script
yes I too would love an easy to use image series option, filters in Hitfilm are OK but your despeckle does an awesome job, I honestly think if you could make it a plugin filter for Virtualdub or other compositing software you could market on somewhere highend even like CGsociety it as users of other PBR render software could use this too!
* NEW * NEW * NEW * NEW * NEW * NEW *
Control mcjDespeckler from the comfort of Daz Studio
Including the 1-Button filtering of image sequences
this way ---> https://sites.google.com/site/mcasualsdazscripts7/mcjdespecklefrontend
Tip
it works best if your render is in png or bmp or tif format because the filter counts on the presence sharp bright pixels and jpg format smudges them
if your image contains just a few dozens or hundred bright pixels then you can reduce the filtering ( by using a factor like 200 )
this way the despeckler will remove the bright pixels but not burn the object contours too much
in the image here, if the filter setting is the strongest ( factor=0) then some of the bright reflections on the bike paint would be corroded
oops
That is fantastic! Looks very user friendly. Thank you!
Thank you so much!!
I just tried this on an image I had that needed this badly. Thank you so much in just a drag and drop my image was cleaned up. I am so thankful to you!
Welcome!
at first i thought i'd just release it stand alone
but having the Daz Studio interface leads me to use it a lot more myself!
there's a quirk but i forget what it is, something about .png ... so i'll fix that next time i encounter the issue, maybe it was for animations
a recent despeckled image
vs something like this originally
hi Mcasual
you think it is complicated making a script that enhances or decreases a graph of an animation in percentages ?
and thank you for the despeckle script
very useful
i made a script named something like "moderate your face" i think it may be usable for other animations, it's for morphs though.
http://www.daz3d.com/forums/discussion/45233/mcjmoderateyourface-script-to-curb-your-figure-s-enthusiasm-ds-1-5
For rotation animations, you can use mcjCycleFilter to change the minimum and maximum values the animation curve is allowed to swing
https://sites.google.com/site/mcasualsdazscripts/mcjcyclefilter
plus it's a good way to view curves for short animations - for longer animations there's my mcgSceneGraf plugin
https://sites.google.com/site/mcasualsdazscripts2/mcjscenegrafds45
unrelated image
Now that's impressive! To be honest, the whole "firefly" thing put me off rendering in Iray, but this is brilliant. Thank you for sharing (P.S. I love your avatar).