imwrite is not working

View: New views
4 Messages — Rating Filter:   Alert me  

imwrite is not working

by Saswata Mandal :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Bug report for Octave 3.0.3 configured for i686-pc-msdosmsvc

Description:
-----------

x = imread('image.png');
imwrite('abc.png',x); --> fails with following message

warning: warn_empty_list_elements is no longer a built-in variable; please read
the NEWS file or type `news' for details
warning: is_list is obsolete and will be removed from a future version of Octave
; please use islist instead
error: transpose not defined for N-d objects
error: evaluating postfix operator `'' near line 273, column 10
error: evaluating assignment expression near line 273, column 8
error: evaluating if command near line 272, column 1
warning: warn_empty_list_elements is no longer a built-in variable; please read
the NEWS file or type `news' for details
error: called from `imwrite' in file `C:\Program Files (x86)\Octave\share\octave
\packages\image-1.0.8\imwrite.m'



Repeat-By:
---------

  * Please replace this item with a description of the sequence of
    events that causes the problem to occur.

Fix:
---

  * If possible, replace this item with a description of how to
    fix the problem (if you don't have a fix for the problem, don't
    include this section, but please do submit your report anyway).



Configuration (please do not edit this section):
-----------------------------------------------

uname output:     Windows
configure opts:  
Fortran compiler: fc-msvc
FFLAGS:           -O2
F2C:              @F2C@
F2CFLAGS:         @F2CFLAGS@
FLIBS:            -lhdf5 -lzlib -lf2c -lkernel32
CPPFLAGS:         -I.  -Ic:/Software/VCLibs/include
INCFLAGS:         -I. -I. -I./liboctave -I./src -I./libcruft/misc
C compiler:       cc-msvc, version
CFLAGS:           -O2 -MD
CPICFLAG:        
C++ compiler:     cc-msvc, version
CXXFLAGS:         -O2 -EHs -MD
CXXPICFLAG:      
LD_CXX:           cc-msvc
LDFLAGS:         
LIBFLAGS:         -L.
RLD_FLAG:        
BLAS_LIBS:        -llapack -lblas
FFTW_LIBS:        -lfftw3
LIBS:             -lreadline  -lncurses -lhdf5 -lzlib  -lws2_32 -lkernel32
LEXLIB:          
LIBGLOB:          -lglob
SED:              /usr/bin/sed
DEFS:
-DPACKAGE_NAME="" -DPACKAGE_TARNAME="" -DPACKAGE_VERSION="" -DPACKAGE_STRING="" -DPACKAGE_BUGREPORT="" -DOCTAVE_SOURCE=1 -D_GNU_SOURCE=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DSEPCHAR=';' -DSEPCHAR_STR=";" -D__NO_MATH_INLINES=1 -DCXX_NEW_FRIEND_TEMPLATE_DECL=1 -DCXX_ISO_COMPLIANT_LIBRARY=1 -DCXX_ABI=unknown -DHAVE_QHULL=1 -DHAVE_PCRE=1 -DHAVE_ZLIB_H=1 -DHAVE_ZLIB=1 -DHAVE_HDF5_H=1 -DHAVE_HDF5=1 -DHAVE_H5GGET_NUM_OBJS=1 -D_HDF5USEDLL_=1 -DHAVE_FFTW3=1 -DHAVE_GLPK_H=1 -DHAVE_GLPK=1 -DHAVE_CURL_CURL_H=1 -DHAVE_CURL=1 -DHAVE_IEEE754_DATA_FORMAT=1 -DF77_FUNC(name,NAME)=name ## _ -DF77_FUNC_(name,NAME)=name ## __ -DHAVE_BLAS=1 -DHAVE_SUITESPARSE_UMFPACK_H=1 -DHAVE_UMFPACK=1 -DUMFPACK_SEPARATE_SPLIT=1 -DHAVE_SUITESPARSE_COLAMD_H=1 -DHAVE_COLAMD=1 -DHAVE_SUITESPARSE_CCOLAMD_H=1 -DHAVE_CCOLAMD=1 -DHAVE_SUITESPARSE_CHOLMOD_H=1 -DHAVE_CHOLMOD=1 -DHAVE_SUITESPARSE_CS_H=1 -DHAVE_CXSPARSE=1 -Dmode_t=int -Dpid_t=int -Duid_t=int -Dgid_t=int -DHAVE_DEV_T=1 -DHAVE_INO_T=1 -DHAVE_LONG_LONG_INT=1 -DHAVE_UNSIGNED_LONG_LONG_INT=1 -DHAVE_SIG_ATOMIC_T=1 -DSIZEOF_SHORT=2 -DSIZEOF_INT=4 -DSIZEOF_LONG=4 -DSIZEOF_LONG_LONG=8 -DHAVE_ALLOCA=1 -DNPOS=std::string::npos -DHAVE_PLACEMENT_DELETE=1 -DSTDC_HEADERS=1 -DHAVE_ASSERT_H=1 -DHAVE_DIRECT_H=1 -DHAVE_FCNTL_H=1 -DHAVE_FLOAT_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_LIMITS_H=1 -DHAVE_LOCALE_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_UTIME_H=1 -DHAVE_UNISTD_H=1 -DHAVE_VARARGS_H=1 -DHAVE_SSTREAM=1 -DHAVE_GLOB_H=1 -DHAVE_FNMATCH_H=1 -DHAVE_CONIO_H=1 -DHAVE_ATEXIT=1 -DHAVE_CHMOD=1 -DHAVE_DUP2=1 -DHAVE_EXECVP=1 -DHAVE_GETCWD=1 -DHAVE_GETPID=1 -DHAVE__KBHIT=1 -DHAVE_MEMMOVE=1 -DHAVE_MKDIR=1 -DHAVE_PUTENV=1 -DHAVE_RAISE=1 -DHAVE_RENAME=1 -DHAVE_RMDIR=1 -DHAVE_SETLOCALE=1 -DHAVE_SETVBUF=1 -DHAVE_STAT=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRICMP=1 -DHAVE_STRNICMP=1 -DHAVE_TEMPNAM=1 -DHAVE_UMASK=1 -DHAVE_UNLINK=1 -DHAVE_UTIME=1 -DHAVE_VFPRINTF=1 -DHAVE_VSPRINTF=1 -DHAVE_VSNPRINTF=1 -DHAVE__CHMOD=1 -DHAVE__SNPRINTF=1 -DHAVE__UTIME32=1 -DOCTAVE_HAVE_BROKEN_STRPTIME=1 -D_USE_MATH_DEFINES=1 -DHAVE_LOADLIBRARY_API=1 -DENABLE_DYNAMIC_LINKING=1 -DHAVE__FINITE=1 -DHAVE__ISNAN=1 -DHAVE__COPYSIGN=1 -DHAVE_DECL_SIGNBIT=0 -DHAVE_STRUCT_STAT_ST_RDEV=1 -DHAVE_DECL_TZNAME=1 -DHAVE_TZNAME=1 -DCLOSEDIR_VOID=1 -DMKDIR_TAKES_ONE_ARG=1 -DUSE_READLINE=1 -DRETSIGTYPE=void -DHAVE_DECL_SYS_SIGLIST=0 -DMUST_REINSTALL_SIGHANDLERS=1 -DRETSIGTYPE_IS_VOID=1 -DGNUPLOT_BINARY="pgnuplot"


User-preferences (please do not edit this section):

  EDITOR = C:\Program Files (x86)\Octave\tools\wscite\SciTE.exe
  EXEC_PATH = C:\Program Files (x86)\Octave\msys\bin;C:\Program Files (x86)\Octave\libexec\octave\3.0.3\site\exec\i686-pc-msdosmsvc;C:\Program Files (x86)\Octave\libexec\octave\api-v32\site\exec\i686-pc-msdosmsvc;C:\Program Files (x86)\Octave\libexec\octave\site\exec\i686-pc-msdosmsvc;C:\Program Files (x86)\Octave\libexec\octave\3.0.3\exec\i686-pc-msdosmsvc;C:\Program Files (x86)\Octave\bin;C:\Program Files (x86)\Octave;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\PROGRA~1\CA\SHARED~1\SCANEN~1;C:\Program Files\CA\eTrust Antivirus
  IMAGE_PATH = .;C:\Program Files (x86)\Octave\share\octave\3.0.3\imagelib
  PAGER = less
  PS1 = \s:\#>
  PS2 = >
  PS4 = +
  beep_on_error = 0
  completion_append_char = 
  crash_dumps_octave_core = 1
  echo_executing_commands = 0
  fixed_point_format = 0
  gnuplot_binary = pgnuplot
  gnuplot_command_end =

  gnuplot_command_plot = pl
  gnuplot_command_replot = rep
  gnuplot_command_splot = sp
  gnuplot_command_title = t
  gnuplot_command_using = u
  gnuplot_command_with = w
  history_file = C:\Users\sas\.octave_hist
  history_size = 1024
  ignore_function_time_stamp = system
  info_file = C:\Program Files (x86)\Octave\share\info\octave.info
  info_program = info
  makeinfo_program = makeinfo
  max_recursion_depth = 256
  output_max_field_width = 5
  output_precision = 5
  page_output_immediately = 0
  page_screen_output = 1
  print_answer_id_name = 1
  print_empty_dimensions = 1
  save_precision = 16
  saving_history = 1
  sighup_dumps_octave_core = 1
  sigterm_dumps_octave_core = 1
  silent_functions = 0
  split_long_rows = 1
  string_fill_char = 
  struct_levels_to_print = 2
  suppress_verbose_help_message = 0



_______________________________________________
Bug-octave mailing list
Bug-octave@...
https://www-old.cae.wisc.edu/mailman/listinfo/bug-octave

Re: imwrite is not working

by Andy Chee :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Saswata Mandal wrote:
Bug report for Octave 3.0.3 configured for i686-pc-msdosmsvc

Description:
-----------

x = imread('image.png');
imwrite('abc.png',x); --> fails with following message

warning: warn_empty_list_elements is no longer a built-in variable; please
read
the NEWS file or type `news' for details
warning: is_list is obsolete and will be removed from a future version of
Octave
; please use islist instead
error: transpose not defined for N-d objects
error: evaluating postfix operator `'' near line 273, column 10
error: evaluating assignment expression near line 273, column 8
error: evaluating if command near line 272, column 1
warning: warn_empty_list_elements is no longer a built-in variable; please
read
the NEWS file or type `news' for details
error: called from `imwrite' in file `C:\Program Files
(x86)\Octave\share\octave
\packages\image-1.0.8\imwrite.m'
I am having the same problem with the same result on my system running Octave 3.0.3 under Linux

The commands I used to create the error which are basically the same, were:

im = imread('original.jpg');
imwrite('copy.jpg',im);

Note however if original.jpg is a greyscale image these commands work as I'd expect



Re: imwrite is not working

by Andy Chee :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Andy Chee wrote:
Saswata Mandal wrote:
Bug report for Octave 3.0.3 configured for i686-pc-msdosmsvc

Description:
-----------

x = imread('image.png');
imwrite('abc.png',x); --> fails with following message

warning: warn_empty_list_elements is no longer a built-in variable; please
read
the NEWS file or type `news' for details
warning: is_list is obsolete and will be removed from a future version of
Octave
; please use islist instead
error: transpose not defined for N-d objects
error: evaluating postfix operator `'' near line 273, column 10
error: evaluating assignment expression near line 273, column 8
error: evaluating if command near line 272, column 1
warning: warn_empty_list_elements is no longer a built-in variable; please
read
the NEWS file or type `news' for details
error: called from `imwrite' in file `C:\Program Files
(x86)\Octave\share\octave
\packages\image-1.0.8\imwrite.m'
I am having the same problem with the same result on my system running Octave 3.0.3 under Linux

The commands I used to create the error which are basically the same, were:

im = imread('original.jpg');
imwrite('copy.jpg',im);

Note however if original.jpg is a greyscale image these commands work as I'd expect
I suppose one way of working around it would be to split 'into R,G,B and then write it back.  So the commands would be:

im = imread('original.jpg');
im_red = im(:,:,1);
im_green = im(:,:,2);
im_blue = im(:,:,3);
imwrite('copy.jpg', im_red, im_green, im_blue);

Or you could combine them in one line:

im = imread('original.jpg');
imwrite('copy.jpg', im(:,:,1), im(:,:,2), im(:,:,3));

But does this really address the problem with imwrite?

Re: imwrite is not working

by John W. Eaton-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 18-Jan-2009, Andy Chee wrote:

| Saswata Mandal wrote:
| >
| > Bug report for Octave 3.0.3 configured for i686-pc-msdosmsvc
| >
| > Description:
| > -----------
| >
| > x = imread('image.png');
| > imwrite('abc.png',x); --> fails with following message
| >
| > warning: warn_empty_list_elements is no longer a built-in variable; please
| > read
| > the NEWS file or type `news' for details
| > warning: is_list is obsolete and will be removed from a future version of
| > Octave
| > ; please use islist instead
| > error: transpose not defined for N-d objects
| > error: evaluating postfix operator `'' near line 273, column 10
| > error: evaluating assignment expression near line 273, column 8
| > error: evaluating if command near line 272, column 1
| > warning: warn_empty_list_elements is no longer a built-in variable; please
| > read
| > the NEWS file or type `news' for details
| > error: called from `imwrite' in file `C:\Program Files
| > (x86)\Octave\share\octave
| > \packages\image-1.0.8\imwrite.m'

Please note that for 3.0.x, imread and imwrite are part of the image
package and not Octave itself, so the bug@... list is not
really the right place to report the problem.  Instead, you should
report problems with functions from packages to the package maintainers.

| I am having the same problem with the same result on my system running
| Octave 3.0.3 under Linux
|
| The commands I used to create the error which are basically the same, were:
|
| im = imread('original.jpg');
| imwrite('copy.jpg',im);
|
| Note however if original.jpg is a greyscale image these commands work as I'd
| expect

The imread and imwrite functions that are part of the current Octave
sources (what will become the next Octave release, version 3.2) seem
to work correctly for copying images this way.  But the syntax is

  imwrite (img, file)

which is I think compatible with the other leading brand.

jwe

_______________________________________________
Bug-octave mailing list
Bug-octave@...
https://www-old.cae.wisc.edu/mailman/listinfo/bug-octave