Hi,

for the sake of completeness, the PDL::OpenCV interface should be able
to read/write a fair selection of image and vidoe formats. Of course,
that is a lot of overhead to install if this is all you ever need.

Ingo

On 10/3/23 05:58, Zakariyya Mughal wrote:
On 2023-10-02 at 09:21:59 +0200,ng0...@gmail.com  wrote:
Hello,

the task is to obtain a spectrum of an infrared image, see attached, via
Fourier Transform; several steps are required as outlined in the PDL Book.
I guess, if these two commands from PDL::IO::Image worked,

rimage('cat.jpeg'); # JPEG_GREYSCALE
...
wimage('catmod.jpeg');

the intermediate ones could be used from PDL::Graphics::Simple
Hello Thomas,

I see. The PDL Book copy that I just grepped does not use
`PDL::IO::Image`. Where are you getting that?

What the PDL Book I have uses is the built in `PDL::IO::Pic` which works
with the NetPBM package. That should work for your image. The functions
that you want are either `rim` or `rpic`.

Cheers,
- Zaki Mughal

Thanks, Thomas

On Sun, Oct 1, 2023 at 11:41 PM Zakariyya Mughal<zaki.mug...@gmail.com>
wrote:

On 2023-09-18 at 14:37:54 +0200,ng0...@gmail.com  wrote:
Hello,

wrt to the error below, this issue
https://sourceforge.net/p/freeimage/discussion/36111/  is filed but
unlikely
to get an answer.

Question: does anyone have a working PDL environment with "use
PDL::IO::Image" working - and would not mind sharing the steps (if not
too
many) to set it up?
Hello,

Unfortunately, nobody has yet fixed Alien::FreeImage (this problem is
known and why PDL does not test against PDL::IO::Image at this time) and
I have not contacted the author. I might be able to help, but not
immediately.

Which functionality of PDL::IO::Image do you need? It may be built-in to
PDL already.

Cheers,
- Zaki Mughal

Thanks a lot, Thomas

---------- Forwarded message ---------
From:<ng0...@gmail.com>
Date: Thu, Sep 14, 2023 at 5:05 PM
Subject: Re: [Pdl-devel] Debian 12 "-t experimental" install of PDL
To: Ed .<ej...@hotmail.com>
Cc:pdl-devel@lists.sourceforge.net  <pdl-devel@lists.sourceforge.net>


Dear All / Ed,

as mentioned before, it is possible to get a smooth installation of PDL
using (Perl 5.38, PDL 2.084) under Arch - in fact EndeavourOS - by the
commands below. perlbrew is not used as I have not seen a clean install
e.g. under Ubuntu which is still on perl 5.36:

yay cpanminus

sudo cpanm Term::ReadKey

sudo cpanm Term::ReadLine::Gnu

sudo cpanm Alien::Gnuplot # first

sudo cpanm PDL::Graphics::Gnuplot # second

sudo cpanm PDL::Graphics::Simple # third, pops up

However, *Alien::FreeImage* throws an error in a next step. Would any
developer mind to fix it:

sudo cpanm Alien::FreeImage # first
(used by: sudo cpanm PDL::IO::Image  # second)
...
Source/OpenEXR/Imath/ImathVec.h:2150:33: error: ISO C++17 does not allow
dynamic exception specifications
  2150 | Vec4<T>::normalizedExc () const throw (IEX_NAMESPACE::MathExc)
       |                                 ^~~~~
In file included from Source/FreeImage/../OpenEXR/IlmImf/ImfXdr.h:108,
                  from
Source/FreeImage/../OpenEXR/IlmImf/ImfGenericOutputFile.h:40,
                  from
Source/FreeImage/../OpenEXR/IlmImf/ImfOutputFile.h:49:
Source/OpenEXR/Half/half.h: In constructor ‘half::half(float)’:
Source/OpenEXR/Half/half.h:462:22: warning: ISO C++17 does not allow
‘register’ storage class specifier [-Wregister]
   462 |         register int e = (x.i >> 23) & 0x000001ff;
       |                      ^
Source/OpenEXR/Half/half.h:473:26: warning: ISO C++17 does not allow
‘register’ storage class specifier [-Wregister]
   473 |             register int m = x.i & 0x007fffff;
       |                          ^
make: *** [Makefile.gnu:64: Source/FreeImage/PluginEXR.o] Error 1
###ERROR### make failed [512] at inc/My/Builder/Unix.pm line 33.
-> FAIL Installing Alien::FreeImage failed. See
/root/.cpanm/work/1694702761.20233/build.log for details. Retry with
--force to force install it.

Thanks a lot, Thomas

On Sat, Sep 2, 2023 at 12:47 AM Ed .<ej...@hotmail.com>  wrote:

Hi Thomas,



You will want to install Term::ReadKey and probably
Term::ReadLine::Gnu to
have a nicer, more interactive perldl. I don’t use pdl2 myself, but it
did
tell you what it needs to run if you want to use it.



Also, Alien::Gnuplot only installs (or checks for) actual gnuplot. If
you
want the PDL interface to it, which PDL::Graphics::Simple wraps
around, you
need to install PDL::Graphics::Gnuplot. This would solve the thing
PDL::Graphics::Simple was telling you: “Sorry, all known plotting
engines
failed.  Install one and try again.” Please read

https://metacpan.org/pod/PDL::Graphics::Simple#SUPPORTED-GRAPHICS-ENGINES


Best regards,

Ed



*From: *ng0...@gmail.com
*Sent: *01 September 2023 18:10
*To: *Ed .<ej...@hotmail.com>
*Cc: *Ingo Schmid<ingo...@gmx.at>;pdl-devel@lists.sourceforge.net
*Subject: *Re: [Pdl-devel] Debian 12 "-t experimental" install of PDL



Hello Ed,



as I understand, there a different options to get First Steps from the
PDL
book to work. I have adopted the approach using perlbrew and cpanm as
they seem the most stable.



Please find below the sequence of commands issued and the final error
messages under Ubuntu. I used the same approach on three different
Linux
distributions (Debian, Ubuntu, Arch) with the same result.



Is there any chance to reproduce the problem and look into it?



Thanks a lot, Thomas



# idea: install PDL piggyback from CPAN under perlbrew



perlbrew init # change prompt in .profile, .bashrc

perlbrew install perl-5.38.0

perlbrew install-cpanm

perlbrew install-patchperl

perlbrew switch perl-5.38.0



cpanm Alien::Gnuplot # first ...OK

cpanm PDL::Graphics::Simple # second ...OK



Ubuntu: ~ $ pdl2

pdl2: Devel::REPL version 1.003011 not found, running
'/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl' instead...

perlDL shell v1.357

  PDL comes with ABSOLUTELY NO WARRANTY. For details, see the file

  'COPYING' in the PDL distribution. This is free software and you

  are welcome to redistribute it under certain conditions, see

  the same file for details.

ReadLines, NiceSlice, MultiLines  enabled

Reading PDL/default.perldlrc...

WARNING: Error loading PDL: 'Can't locate Term/ReadKey.pm in @INC (you
may
need to install the Term::ReadKey module) (@INC entries checked:

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0/x86_64-linux
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0) at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux/PDL/Doc/Perldl.pm
line 52.

BEGIN failed--compilation aborted at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux/PDL/Doc/Perldl.pm
line 52.

Compilation failed in require at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux/PDL/default.perldlrc
line 37.

BEGIN failed--compilation aborted at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux/PDL/default.perldlrc
line 37.

Compilation failed in require at (eval 14) line 1.

' - trying blib.

WARNING: PDL startup not found only plain perl available



Note: AutoLoader not enabled ('use PDL::AutoLoader' recommended)



perl> use PDL::Graphics::Simple

Can't locate PDL/Graphics/PGPLOT/Window.pm in @INC (you may need to
install the PDL::Graphics::PGPLOT::Window module) (@INC entries
checked:
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0/x86_64-linux
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0) at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple/PGPLOT.pm
line 28, <STDIN> line 1.



perl> imag (sin(rvals(200,200)+1))

Sorry, all known plotting engines failed.  Install one and try again.

  at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple.pm
line 434, <STDIN> line 2.

PDL::Graphics::Simple::new("PDL::Graphics::Simple") called at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple.pm
line 389

PDL::Graphics::Simple::pgswin() called at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple.pm
line 1262

PDL::Graphics::Simple::_global_or_new() called at

/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple.pm
line 1151

PDL::Graphics::Simple::imag(PDL=SCALAR(0x563dd1c9aca0)) called at (eval
50) line 1

eval 'imag (sin(rvals(200,200)+1))

' called at (eval 36) line 6

main::eval_and_report("imag (sin(rvals(200,200)+1))\x{a}") called at
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl line 618

main::process_input() called at
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl line 638

eval {...} called at
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl line 638

require /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl
called at
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/pdl2 line 27

main::BEGIN() called at
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/pdl2 line 33

eval {...} called at
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/pdl2 line 33



perl> quit





On Fri, Sep 1, 2023 at 4:56 PM Ed .<ej...@hotmail.com>  wrote:

Please just try with the latest (Perl 5.38, PDL 2.084), and report any
problems?



Best regards,

Ed



*From: *ng0...@gmail.com
*Sent: *31 August 2023 19:09
*To: *Ingo Schmid<ingo...@gmx.at>
*Cc: *pdl-devel@lists.sourceforge.net
*Subject: *Re: [Pdl-devel] Debian 12 "-t experimental" install of PDL



Hello Ingo,



much appreciate! Just to ask which perl version is most likely to run
the
commands from the First Step PDL Book?



@anyone: which perl version is known to work for that purpose?



Thanks a lot, Thomas



On Thu, Aug 31, 2023 at 11:00 AM Ingo Schmid<ingo...@gmx.at>  wrote:

Hi,

I have not really read through the whole thread, I apologise if this
does
not apply to your problem then.

I have moved most of the PDL stuff to perlbrew which allows a fairly
system independent installation, it's berrybrew on windows, I don't own
Macs. On linux, your distribution most probably provides it, I used
apt to
install the software itself. The best part about is, that system (perl)
upgrades don't break your PDL installation. This allowed me to
consistently
run things cross platform with no troubles for a long time.

Run

perlbrew install <perl version>
perlbrew install-cpanm
perlbrew install-patchperl
It takes a fair amount of installation time and I guess disk space,
defaults to your home.

Please consult the perlbrew docs for the exact process, this is I think
the most useful info:https://perlbrew.pl/Perlbrew-and-Friends.html.
Once
you are set, use

perlbrew switch ...
cpanm PDL::Graphics::Simple
I guess you may need to install a few dependencies that are either
ambiguous or simply missing using cpanm from the same shell. I don't
remember if P:G:S comes with a default backend or if you need to, for
example, install gnuplot.

I hope this helps.

Ingo

On 8/31/23 10:12,ng0...@gmail.com  wrote:

Hello,



would anyone with a working version mind to post some hints on how to
achieve:



cpan PDL::Graphics::Simple
pdl> use PDL::Graphics::Simple
pdl> imag (sin(rvals(200,200)+1))



on no matter on which platform but with the least number of steps?



Thanks a lot, Thomas



On Wed, Aug 30, 2023 at 4:51 PM William Schmidt <
t.william.schm...@gmail.com> wrote:

Hello Thomas (ngO177),



I encountered a similar problem building PDL 2.083 and 2.084 in macOS
Monterrey, to wit: getting PDL::Graphics::Simple to work, or even to
pass
its build tests.  Rather than repeat the odyssey I went through here I
suggest you read the write-up I did at perlmonks that documents the
build
debug process:



https://www.perlmonks.org/?node_id=11153860



I posted this as open-issue #450 at PDL meta-cpan, but alas, no one
from
PDL dev has, as yet, bothered to read it.  In a nutshell, you need a
graphics engine on your machine and if there isn't one, or PDL can't
find
it, the Alien process (since a graphics engine is defined in PDL-speak
as
an alien process) will find one appropriate to your OS on the net,
download
and build it for you. Alas, for macOS Monterrey, Alien built a crippled
plotting engine. It failed to un-comment any of the three #ifdef
terminal
definitions that support graphics in macOS. Thus, no terminal def for
macOS
was compiled into gnuplot. The fix, for me, was to rtfm the build docs,
initialize the environment to point to my preferred graphics engine
(gnuplot, built by me with macports rather than Alien), and enable
interactive build tests.  To be fair to PDL developers, this is all
documented in the PDL build instructions and 'man gnuplot', but most
of us
take the ease of building Perl modules for granted and don't bother to
read
them unless something goes wrong.  Alien is a brilliant idea but at
present
its execution in PDL is flawed. It attempts to transparently obtain
for you
an appropriate graphics engine but fails to build it correctly.  With a
little hacking you can get around this, I did, but as always, your
mileage
will vary.  I would very much like to hear from you after you have
read the
perlmonks post and evaluated my solution in a Linux context.  My PDL in
Monterrey is now working correctly, so I held off trying to build PDL
in
Ubuntu, but if nothing works for you I will give it a try.


Regards,
Will Schmidt (perlboy_emeritus)





On Wed, Aug 30, 2023 at 5:22 AM<ng0...@gmail.com>  wrote:

Hello,



in order to take some first steps

cpan PDL::Graphics::Simple
pdl> use PDL::Graphics::Simple
pdl> imag (sin(rvals(200,200)+1))



on Debian 12 w/ experimental repos activated, all I try, see below,
fails.


Any ideas?

Appreciate, Thomas
pdl

sudo apt -t experimental install *pdl*

sudo apt -t experimental install *pgplot5*

sudo apt -t experimental install *libpgplot-perl*



sudo apt -t experimental install *libpdl-graphics-gnuplot-perl*
cpan *graphics simple*

cpan PDL::Graphics::Simple



...

Test Summary Report

-------------------

t/simple.t (Wstat: 512 (exited 2) Tests: 24 Failed: 2)

   Failed tests:  1, 12

   Non-zero exit status: 2

   Parse errors: No plan found in TAP output

Files=1, Tests=24,  2 wallclock secs ( 0.01 usr  0.00 sys +  0.26 cusr
0.22 csys =  0.49 CPU)

Result: FAIL

Failed 1/1 test programs. 2/24 subtests failed.

make: *** [Makefile:851: test_dynamic] Error 2

   ETJ/PDL-Graphics-Simple-1.009.tar.gz

   make test -- NOT OK

//hint// to see the cpan-testers results for installing this module,
try:
   reports ETJ/PDL-Graphics-Simple-1.009.tar.gz
*dh-make-perl*

https://wiki.debian.org/PerlFAQ

sudo apt -t experimental install *dh-make-perl*



dh-make-perl --build --cpan PDL::Graphics::Simple



...

Test Summary Report

-------------------

t/simple.t (Wstat: 512 (exited 2) Tests: 24 Failed: 2)

   Failed tests:  1, 12

   Non-zero exit status: 2

   Parse errors: No plan found in TAP output

Files=1, Tests=24,  1 wallclock secs ( 0.01 usr  0.00 sys +  0.29 cusr
0.21 csys =  0.51 CPU)

Result: FAIL

Failed 1/1 test programs. 2/24 subtests failed.

make[1]: *** [Makefile:854: test_dynamic] Error 2

make[1]: Leaving directory '/home/th6mas/PDL-Graphics-Simple-1.009'

dh_auto_test: error: make -j1 test TEST_VERBOSE=1 returned exit code 2

make: *** [debian/rules:4: build] Error 255

make: Leaving directory '/home/th6mas/PDL-Graphics-Simple-1.009'

Cannot create deb package: 'debian/rules build' failed.



_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel



_______________________________________________

pdl-devel mailing list

pdl-devel@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/pdl-devel

_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel






_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel




_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel
_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel

Reply via email to