[GRASS-user] i.segment.stats memory usage error

Moritz Lennert mlennert at club.worldonline.be
Thu Oct 27 03:45:41 PDT 2016



Le 27 octobre 2016 12:35:14 GMT+02:00, James Duffy <james.philip.duffy at gmail.com> a écrit :
>On 27 October 2016 at 11:08, Moritz Lennert
><mlennert at club.worldonline.be>
>wrote:
>
>>
>>
>> Le 27 octobre 2016 11:22:02 GMT+02:00, James Duffy <
>> james.philip.duffy at gmail.com> a écrit :
>> >Hello,
>> >
>> >I'm trying to use i.segment.stats with GRASS 7.0.4 in the osgeolive
>> >32bit
>> >operating system.
>> >
>> >Prior to using this tool I have successfully created my segmented
>map
>> >using
>> >i.segment.
>> >
>> >When I try to execute the following command:
>> >
>> >i.segment.stats --overwrite --verbose map=gp_seg_optimum at gp1 \
>> >rasters=gp_ortho.1 at gp1,gp_ortho.2 at gp1,gp_ortho.3 at gp1,gp_ortho.4 at gp1
>\
>> >raster_statistics=min,max,mean,stddev,variance,sum \
>> >csvfile=/home/jpd205/Wales_GRASS/GarronPill/gp_seg_stats \
>> >separator=comma
>> >
>> >I get this error:
>> >
>> >Calculating geometry statistics
>> >ERROR: G_malloc: unable to allocate 4273800320 bytes of memory at
>> >       /tmp/tmpgzUtnA/r.object.geometry/main.c:129
>>
>> This is coming from r.object.geometry.
>>
>> What are your region settings (g.region -p) ? How many segments do
>you
>> have ?
>>
>
>GRASS 7.0.4 (GarronPill):~ > g.region -p
>projection: 99 (OSGB 1936 / British National Grid)
>zone:       0
>datum:      osgb36
>ellipsoid:  airy
>north:      208007.00931776
>south:      207952.59780698
>west:       200993.90853302
>east:       201097.28911076
>nsres:      0.00430914
>ewres:      0.00430914
>rows:       12627
>cols:       23991
>cells:      302934357

Are you sure 4mm is correct for the resolution ?

What does r.info on


>
>
>>
>> Try running I.segment.stats without requesting form statistics.
>
>
>Running:
>
>i.segment.stats --overwrite --verbose map=gp_seg_optimum at gp1 \
>csvfile=/home/jpd205/Wales_GRASS/GarronPill/gp_seg_stats \
>separator=comma

Default is to do form statistics, so the above line also does. I have to admit that I don't know what happens when you give an empty parameter such as

area_measures= or area_measures=""

What does r.info gp_seg_optimum give you ?

Moritz

>
>Gives:
>
>Calculating geometry statistics
>ERROR: G_malloc: unable to allocate 4273800320 bytes of memory at
>       /tmp/tmpgzUtnA/r.object.geometry/main.c:129
>
>And try running r.object.geometry directly.
>>
>
>Running:
>
>r.object.geometry --overwrite --verbose input=gp_seg_optimum at gp1 \
>output=/home/jpd205/Wales_GRASS/GarronPill/gp_test separator=comma
>
>Gives:
>
>Current region rows: 12627, cols: 23991
>ERROR: G_malloc: unable to allocate 4273800320 bytes of memory at
>       /tmp/tmpgzUtnA/r.object.geometry/main.c:129
>
>
>>
>> Moritz
>>
>>
>Thanks for your reply.
>
>James



More information about the grass-user mailing list