[Newbies] Reading PNG images into squeak image is slow
Levente Uzonyi
leves at elte.hu
Wed Oct 23 16:40:03 UTC 2013
On Wed, 23 Oct 2013, Ben Coman wrote:
> Levente Uzonyi wrote:
>> On Wed, 23 Oct 2013, Ben Coman wrote:
>>
>>> Levente Uzonyi wrote:
>>>> On Tue, 22 Oct 2013, Mateusz Grotek wrote:
>>>>
>>>>> It is (even on Cog).
>>>>> What is the reason for that?
>>>>> Is it a problem with the algorithm used in the image or it's unsolvable
>>>>> inside the image and a plugin or FFI is needed.
>>>>
>>>> I doubt it can be significantly faster using smalltalk only. When we
>>>> wanted to store images in files using lossless compression, we decided to
>>>> use jpeg instead of png, because it has plugin support, so it's a lot
>>>> faster to load and save the images.
>>> That sounds contradictory since JPEG is not lossless (I know you know,
>>> just stating the obvious). For computer generated images with solid
>>> blocks of colour JPEG can have artifacts. PNG is lossless. In general,
>>> photo=JPEG, graphics=PNG.
>>
>> You have to set the quality parameter to 100 to get a lossless image. The
>> only drawback versus png is that it only supports three channels, so there
>> will be no alpha channel in those images. But that was not a problem for
>> us.
>
> Thats interesting. I'd never heard of that. I always believed 100 was still
> lossless per [1] [2]. What software did you use for the lossless JPEG
> encoding? cheers -ben
>
> [1]
> http://stackoverflow.com/questions/7982409/is-jpeg-lossless-when-quality-is-set-to-100
> [2]
> http://photo.stackexchange.com/questions/19876/converting-raw-images-to-lossless-jpeg-using-gimp
You're right, it's not lossless, but the difference is not visible by a
human on non-forged images.
Levente
>
>>
>>
>> Levente
>>
>>>>
>>>>>
>>>>> P.S.
>>>>>
>>>>> Code:
>>>>> (PNGReadWriter formFromFileNamed: something) durationToRun
>>>>> "0:00:01:09.591"
>>>>> "unacceptale if you want to program an image browser"
>>>>>
>>>>> Data:
>>>>> 1301.png: PNG image data, 2048 x 1536, 8-bit/color RGB, non-interlaced
>>>>> (a pic of a street taken from a cell phone)
>>>>
>>>> That image is huge. Cell phones and digital cameras usually create jpeg
>>>> images. But if you really need to support png, then ffi or a plugin is
>>>> the way to go.
>>> I believe this is because a higher level of compression would take longer
>>> and use more battery. You can use http://www.xnview.com/
>>> to often drop 80% of the file size of of cell phone images without any
>>> apparent loss of quality.
>>
>> If that is a concern, then I'm pretty sure these machines have hardware
>> which can compress the images. The do have it for video (mpeg2/h264), so
>> adding jpeg is basically no extra cost.
>>
>> On the other hand, I don't think creating a png file is computationally
>> less expensive, than creating a jpeg file.
>>
>>
>> Levente
>>
>>>
>>> -ben
>>>>
>>>>
>>>> Levente
>>>>
>>>
>>> _______________________________________________
>
> _______________________________________________
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
>
More information about the Beginners
mailing list