#3820 closed defect (fixed)
Error i.pansharpen in grass76 relbranch
Reported by: | veroandreo | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | 7.6.2 |
Component: | Imagery | Version: | svn-releasebranch76 |
Keywords: | i.pansharpen | Cc: | |
CPU: | Unspecified | Platform: | Unspecified |
Description
When compiling grass76_relbranch I got an indentation error in i.pansharpen at line 257 (https://trac.osgeo.org/grass/browser/grass/branches/releasebranch_7_6/scripts/i.pansharpen/i.pansharpen.py#L257)
File "/home/veroandreo/software/grass76_release/dist.x86_64-pc-linux-gnu/scripts/i.pansharpen", line 256 pr.wait() ^ IndentationError: unexpected indent
I entered the directory of i.pansharpen, run make, still the same error. So I open the code and locally moved lines 257-263 to the left. Compilation of i.pansharpen went fine, no errors. But when I try to run the examples in the manual page for Landsat 7 in NC Location, I get:
GRASS 7.6.2svn (nc_spm_08_grass7):~ > i.pansharpen red=lsat7_2002_30@PERMANENT green=lsat7_2002_20 blue=lsat7_2002_10 pan=lsat7_2002_80 method=ihs output=lsat7_2002_ihs Traceback (most recent call last): File "/home/veroandreo/software/grass76_release/dist.x86_64-pc-linux-gnu/scripts/i.pansharpen", line 402, in <module> main() File "/home/veroandreo/software/grass76_release/dist.x86_64-pc-linux-gnu/scripts/i.pansharpen", line 135, in main if bits == 8: NameError: global name 'bits' is not defined
Is this related to the backport in r74385?
Change History (4)
follow-up: 3 comment:1 by , 6 years ago
comment:3 by , 6 years ago
Replying to veroandreo:
It does work in trunk with no reported errors. However, if I run it in trunk compiled with python 3 in a virtualenv, I get:
i.pansharpen red=lsat7_2002_30@PERMANENT green=lsat7_2002_20 blue=lsat7_2002_10 pan=lsat7_2002_80 method=ihs output=lsat7_2002_ihs Using 8bit image channels Performing pan sharpening with hi res pan image: 14.250000 Transforming to IHS color space... 100% Histogram matching... 100% Traceback (most recent call last): File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/scripts/i.pansharpen", line 632, in <module> main() File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/scripts/i.pansharpen", line 259, in main ihs(pan, ms1, ms2, ms3, out, pid, sproc) File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/scripts/i.pansharpen", line 380, in ihs panmatch = matchhist(pan, target, outname) File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/scripts/i.pansharpen", line 552, in matchhist stats = stats_out.communicate()[0].split('\n')[:-1] TypeError: a bytes-like object is required, not 'str'
So far, it is not designed to work in Python 3. I have not yet upgraded my computers so I can't yet test. A coming step will be to develop a new workflow to compile GRASS in Python 3.
comment:4 by , 6 years ago
I confirm that the commit fixed the problem in relbranch.
So far, it is not designed to work in Python 3. I have not yet upgraded my computers so I can't yet test. A coming step will be to develop a new workflow to compile GRASS in Python 3.
Will this help: https://trac.osgeo.org/grass/wiki/Python3Support#Howtotest ?
It does work in trunk with no reported errors. However, if I run it in trunk compiled with python 3 in a virtualenv, I get: