Re: [Scilab-users] ?==?utf-8?q? Which module to use for hassle-free image processing with scilab ?

2020-03-09 Thread Clément David
About the feature set, I suggest you take a look at SIVP which is much more 
complete and target a wider audience. The available functions are the 
documented ones and we might add more if customers requested more.

Currently, this toolbox is used by some customers and we only mapped the 
feature requested by them to have an associated minimal OpenCV build. It 
targets customers and we will probably not open-source it as we don’t want to 
maintain it “for free”. Again if you want to co-develop, take a look at SIVP ; 
Chin Luh did a good job and it is open-source !

Regards,

Clément


From: users  On Behalf Of Antoine Monmayrant
Sent: Monday, March 9, 2020 2:34 PM
To: Users mailing list for Scilab 
Subject: Re: [Scilab-users] ?==?utf-8?q? Which module to use for hassle-free 
image processing with scilab ?


Hello Clément,

Thanks for your answer.
It's still not clear to me whether I should use scicv or not.
First, many features are missing and it's not clear to me how I can implement 
or discover them (hough transforms for example).
Is there a list of the opencv functions that you expose through swig and the 
one that are not implemented?

Also, I'm a bit surprised by your statement:

Note: the code is not open-source but SWIG for Scilab and OpenCV are!
Why is it not open-source?
Is this some transient situation due to the way the code was developped (like 
for a client)?
Do you plan to make it open source in the near future?
For many reasons and lots of lessons learned the hard way, I don't feel like 
investing my time on non open-source software...

Antoine



Le Lundi, Mars 09, 2020 10:52 CET, Clément David 
mailto:clement.da...@esi-group.com>> a écrit:

Hello Antoine,

> - scicv: installs without any issue and as reported by Samuel (
> http://forge.scilab.org/index.php/p/scicv/issues/1944/
> http://forge.scilab.org/index.php/p/scicv/issues/1946/ ), overwrites 'write' 
> and
> 'read' which breaks many native functions in scilab together with other useful
> modules (ie uman). This is a blocking issue that has not been fixed in the 
> past 6
> months. Moreover, many opencv functions are not available and it is not clear
> how to access them.

About sciCV, the idea was to use SWIG [1] and OpenCV [2] as an easy to use (and 
simple to develop) toolbox for manipulating images and videos using Scilab 
scripts. Here we don't have Scilab scripts at all, just a bunch of SWIG rules 
to generate the Scilab C gateways from the OpenCV C API. We have a focus on 
keeping the data in the OpenCV world and "accessing" them from Scilab.

The two reported bugs have been fixed in 0.5 (sorry I did not close them) and 
the latest 0.6 version is built for Scilab 6.1.0 after a customer request.

Note: the code is not open-source but SWIG for Scilab and OpenCV are!


--
Clément
___
users mailing list
users@lists.scilab.org<mailto:users@lists.scilab.org>
http://lists.scilab.org/mailman/listinfo/users



___
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users


Re: [Scilab-users] ?==?utf-8?q? Which module to use for hassle-free image processing with scilab ?

2020-03-09 Thread Antoine Monmayrant

Hello Clément,

Thanks for your answer.
It's still not clear to me whether I should use scicv or not.
First, many features are missing and it's not clear to me how I can implement 
or discover them (hough transforms for example).
Is there a list of the opencv functions that you expose through swig and the 
one that are not implemented?

Also, I'm a bit surprised by your statement:
Note: the code is not open-source but SWIG for Scilab and OpenCV are!Why is it 
not open-source?
Is this some transient situation due to the way the code was developped (like 
for a client)?
Do you plan to make it open source in the near future?
For many reasons and lots of lessons learned the hard way, I don't feel like 
investing my time on non open-source software...

Antoine



Le Lundi, Mars 09, 2020 10:52 CET, Clément David  
a écrit:
 Hello Antoine,

> - scicv: installs without any issue and as reported by Samuel (
> http://forge.scilab.org/index.php/p/scicv/issues/1944/
> http://forge.scilab.org/index.php/p/scicv/issues/1946/ ), overwrites 'write' 
> and
> 'read' which breaks many native functions in scilab together with other useful
> modules (ie uman). This is a blocking issue that has not been fixed in the 
> past 6
> months. Moreover, many opencv functions are not available and it is not clear
> how to access them.

About sciCV, the idea was to use SWIG [1] and OpenCV [2] as an easy to use (and 
simple to develop) toolbox for manipulating images and videos using Scilab 
scripts. Here we don't have Scilab scripts at all, just a bunch of SWIG rules 
to generate the Scilab C gateways from the OpenCV C API. We have a focus on 
keeping the data in the OpenCV world and "accessing" them from Scilab.

The two reported bugs have been fixed in 0.5 (sorry I did not close them) and 
the latest 0.6 version is built for Scilab 6.1.0 after a customer request.

Note: the code is not open-source but SWIG for Scilab and OpenCV are!


--
Clément
___
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users
 
 
___
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users


Re: [Scilab-users] ?==?utf-8?q? Which module to use for hassle-free image processing with scilab ?

2020-03-09 Thread Antoine Monmayrant

Hello Chin Luh,

Thanks for this detailled answer.
For me, the biggest issue with IPCV is the difficulty of getting the install 
right and to ensure it will work on a given platform.
(anecdote time: I just received an email from a colleague asking for help to 
install IPCV on his computer because he got lost at some point and cannot make 
sense of the error message).
Is there any significant difference in the underlying libraries and packaging 
strategies that make scicv way easier to install?
Could some change be made in the packaging of IPCV to get the same install 
experience?
Or is the brute for approach (ie a case on the platform and then a big case on 
the distro if the platform is linux) this only viable approach?
I am by no mean an expert on this kind of things, I can just try to help make 
it work on the platforms I use (mainly the ubuntu LTS of the moment and the 
latest Windows).

Cheers,

Antoine

Le Dimanche, Mars 08, 2020 14:48 CET, Chin Luh Tan 
 a écrit:
  Hi Antoine, This is a very valid point and I afraid to say that there will 
not be any absolute answer for this question. I encounter the very same issue 
with you 10 years back when I need to replace Matlab with Scilab especially in 
Image Processing and Neural Network domain. I came across SIP, which I believe 
it was one of the earliest Image Processing module for Scilab, but if I 
remember correctly, it was only for much older version of Scilab and only for 
linux platform. Then the SIVP toolbox appeared from China Yearly Scilab Module 
competition back then and it was a very first module based on OPENCV library. 
However, it did not cover much functions such as morphology. By then, IPD 
released to cover these missing functions. The combination of these 2 modules 
under Scilab 5.x version could cover most what I needed during that time. 
(Initial version if IPD ridding on top of SIVP to use the OPENCV lib, after 
that it maintained its own lib) However, there are some issues with this method 
(using 2 modules together), both modules were written in very different way. 
SIVP very much following Matlab syntax, while IPD is very "computer science" 
way. For example, function reading an image into SIVP is "imread", IPD is 
"ReadImage". Also, the IPD will load a lot of global variable into workspace 
which is not in my favor. Then I tried to work on SIVP and add in some 
functionalities and tried to contact the author but no reply from him. In 
return, some US company approached us and would like to "buy" the enhanced 
version. However, I insist to remained it as OSS and we came out with some 
other collaboration form and re-brand it to AIVP (Advance Image and Video 
Processing). The module was not released in public that time. The US company 
gone after a few years, and I decided to make the AIVP public, the first thing 
I did is to make it Scilab 6 compatible, and release it with the new name, and 
this is how IPCV born. IPCV is currently independent module, using OPENCV 
4.1.2. Half of the functions are from SIVP, others are newly added via either 
Scilab functions or OpenCV lib. Each of the function which call the OpenCV lib 
will need to have a C/C++ gateway in which it will call the OpenCV lib. In 
order to make the module run in an OS, the OpenCV libs are required for that 
OS, for windows, it is pretty simple. For Linux, if we were to package it for 
all Linux distro, I guess there will be a lot of dependencies. (unless we 
restrict the number of libs used, then the packaging is more likely) The source 
codes of IPCV are published in github https://github.com/tanchinluh/IPCV, 
infact we welcome anyone who wish to help in improving this module. There are a 
lot of fields which could be improve, I name a few:1. Convert the gateway to 
use new Scilab 6 gateway. (for future release)2. To help package the module for 
all Linux (despite the size) , or any other suggestion welcome.3. To build 
extra functions in Image processing using the gateway.4. Documentation There 
are still a lot of half cooked functions in the module, which really need 
contributions from any of us here. It is hard for a module to survived in OSS 
world, w/o much support from the community. After all, If we were to launch a 
kickstarter project for IPCV, would anyone back us?  Have a nice day! 
Regards,Chin Luh (IPCV Dev) On Sun, 08 Mar 2020 17:17:22 +0800 
Antoine Monmayrant  wrote  Hi all,

This mail might sound like a rant, but it is an honest question: which image 
processing toolbox is usable with scilab and actively maintained?

I tried many of them and honestly I did not find one that is just working, easy 
to instal and that can be installed and used reliably on different platforms:

- IPCV : the installation is quite difficult (at least under linux). I just 
installed it under ubuntu 19.04 and it required manual installation of 
dependencies (apt install ...) and a patch. Some functions are half documented 
and in fact not