the bug is already tagged OJ_future so no hurry there.

we still got 5 open OJ 1.16 bugs[1] which look like they might be solved 
already.. ede

[1] https://t1p.de/oix8

On 11/30/2020 10:40, giuseppe.ar...@gmail.com wrote:
> Hi,
> I agree with Michael that ij this step we can consider a good result to have 
> a better RasterImageLayer framework for this three reasons: it if faster in 
> opening images, it requires less ram, it can open more TIF versions than 
> before.
> Possibly we can postpone, as Michael suggests, to rewrite the code to make it 
> simpler.
> One idea could be to extend Referenced image framework to styling (only 
> monoband raster) and give up with RasterImageLayer , even if this will 
> require more and more job to rewrite plugins. Or Ede proposals which seems to 
> be more interesting.
> We can wait after migration to Openjump V.2
> I want to really thank Ede and Michael to all of the efforts, work, ideas and 
> discussion. All your contribution that surely many user will benefit in their 
> work or course activities.
> Thanks again
> Giuseppe
> 
> --
> Inviato da myMail per Android
> 
> domenica, 29 novembre 2020, 06:35PM +01:00 da michael michaud via 
> Jump-pilot-devel jump-pilot-devel@lists.sourceforge.net 
> <mailto:jump-pilot-devel@lists.sourceforge.net>:
> 
> 
> 
>     Hi Ede,
> 
>     Thank you for the overview of the main raster classes.
> 
>     I don't know if your proposition of saving the displayed image to disk 
> would improve performance/memory usage. It would need tests. Anyway, let's 
> postpone this to v2. From my point of view, making raster code more robust 
> and simpler is more important, but making it faster or less greedy in memory 
> would also be nice.
> 
>     Michaël
> 
>      
> 
>>     *envoyé :* 26 novembre 2020 à 14:43
>>     *de :* ede <e...@users.sourceforge.net 
>> <mailto:e...@users.sourceforge.net>>
>>     *à :* "[jump-pilot:bugs] " <5...@bugs.jump-pilot.p.re.sourceforge.net 
>> <mailto:5...@bugs.jump-pilot.p.re.sourceforge.net>>
>>     *objet :* [jump-pilot:bugs] Re: #515 Raster display in low memory 
>> situation
>>
>>
>>     On 11/25/2020 13:15, michael michaud wrote:
>>
>>         Even after several bug fixes, I still not have a good understanding 
>> of the image framework.
>>         To be able to imagine improvements, I would need a more precise idea 
>> about when the image is read from disk and when/where/what is cached.
>>
>>     for ReferencedImage(imagery.geoimg) it's pretty easy, albeit the class 
>> naming is maybe not optimal.
>>     GeoRaster - takes care of loading, provides a RenderedOp
>>     GeoReferencedRaster - adds Referencing, vulgo Envelop
>>     GeoImage - renders/paints a given GeoRaster (implements the whole 
>> rendering chain, the only place that caches)
>>
>>     the Sextante Raster Image framework is a convoluted mess, not sure 
>> what's going on there. just contributed it reusing GeoReferencedRaster for a 
>> way to enforce the tif loader and reusing the same instance for performance. 
>> my current guess is it creates a buffered image once and caches that in 
>> memory.
>>
>>         It would deserve a page on the wiki if it does not exists so that we 
>> know precisely what we are taking about.
>>
>>     probably would. just shying away creating documentation that'll probably 
>> become obsolete fast because nobody maintains it. am pretty wikilazy myself 
>> ;(
>>
>>         Not sure I understand your proposition. Can you explain what would 
>> be the benefit of reading a lossless compressed tiff image from a temp 
>> folder compared to reading it from the original file ?
>>
>>     idea is to cache the visualization on disk instead in memory hence 
>> saving some.
>>
>>         Or is it about saving the symbolization step ?
>>
>>     if symbolization is the creation of the visualization of the values in 
>> the monoband, then yes.
>>
>>         I have no idea if transforming rough data to the displayed image is 
>> cpu-intensive, but I think reading from disk is more time consuming.
>>
>>     probably not, creation of the the visualization involves two times 
>> iterating over all pixels of the whole image, one go to find the lower/upper 
>> limit, second time to create the visualization based on that information.
>>
>>         Also it seems that the cached displayed image is just the part of 
>> the image we want to display. It seems difficult to read/write on disk every 
>> time the envelope of the visible part of the image changes.
>>
>>     it's what ReferencedImage(imagery.geoimg) does except for whole image 
>> overviews.
>>
>>         There are also other ways to optimize like using tiled images or 
>> subsampled overviews (at least in geotiff). I don't think we are ready to 
>> take advantage of it.
>>
>>     agreed. that's why i suggest the caching on disk approach.
>>
>>     ..ede
>>
>>     
>> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>
>>     *<https://sourceforge.net/p/jump-pilot/bugs/515/>[bugs:#515] 
>> <https://sourceforge.net/p/jump-pilot/bugs/515/> Raster display in low 
>> memory situation*
>>
>>     *Status:* open
>>     *Milestone:* OJ_future
>>     *Created:* Tue Nov 24, 2020 10:20 PM UTC by michael michaud
>>     *Last Updated:* Wed Nov 25, 2020 12:15 PM UTC
>>     *Owner:* michael michaud
>>
>>     This ticket follows ticket #513.
>>     After correction of the bug reported by Roberto Rossi in #513 two 
>> problems are left over.
>>     Images are not loaded permanently in memory, but when they must be 
>> shown, RasterImageLayer evaluates if they fit in memory before trying to 
>> display. To evaluate if the image fits in memory it multiplies the number of 
>> pixels by 4 bytes (usual pixel deep for a color image). This evaluation 
>> should be more precise and take into account 1 bit images (b&w) or 64 bits 
>> float values.
>>     Also in the case a black and white image is not displayed, the little 
>> symbol in the LayerNamePanel stay colored instead of turning to gray.
>>
>>     
>> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>
>>     Sent from sourceforge.net because you indicated interest in 
>> https://sourceforge.net/p/jump-pilot/bugs/515/
>>
>>     To unsubscribe from further messages, please visit 
>> https://sourceforge.net/auth/subscriptions/
>>
>>      
> 
>     
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> 
>     *[bugs:#515] <https://sourceforge.net/p/jump-pilot/bugs/515/> Raster 
> display in low memory situation*
> 
>     *Status:* open
>     *Milestone:* OJ_future
>     *Created:* Tue Nov 24, 2020 10:20 PM UTC by michael michaud
>     *Last Updated:* Wed Nov 25, 2020 12:15 PM UTC
>     *Owner:* michael michaud
> 
>     This ticket follows ticket #513.
>     After correction of the bug reported by Roberto Rossi in #513 two 
> problems are left over.
>     Images are not loaded permanently in memory, but when they must be shown, 
> RasterImageLayer evaluates if they fit in memory before trying to display. To 
> evaluate if the image fits in memory it multiplies the number of pixels by 4 
> bytes (usual pixel deep for a color image). This evaluation should be more 
> precise and take into account 1 bit images (b&w) or 64 bits float values.
>     Also in the case a black and white image is not displayed, the little 
> symbol in the LayerNamePanel stay colored instead of turning to gray.
> 
>     
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> 
>     Sent from sourceforge.net because jump-pilot-devel@lists.sourceforge.net 
> <mailto:jump-pilot-devel@lists.sourceforge.net> is subscribed to 
> https://sourceforge.net/p/jump-pilot/bugs/
> 
>     To unsubscribe from further messages, a project admin can change settings 
> at https://sourceforge.net/p/jump-pilot/admin/bugs/options. Or, if this is a 
> mailing list, you can unsubscribe from the mailing list.
> 
> 
>     _______________________________________________
>     Jump-pilot-devel mailing list
>     Jump-pilot-devel@lists.sourceforge.net 
> <mailto:Jump-pilot-devel@lists.sourceforge.net>
>     https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
> 
> 
> 
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
> 


_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to