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 
<antoine.monmayr...@laas.fr> 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 implemented (imhoughc for example). I also had trouble in the 
past where the install proved impossible during several months on some OSes I 
use at work (can't remember which flavour of linux or windows it was).

- 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.

- sip : I used it at some point but it seems that it's no longer supported. Is 
this the case?

- many others, like sip which have not been updated for years (IPT, SIVP...)

Well, it's a bit of a mess and I am a bit lost.
Any of you have some piece of advice on which toolbox I should invest into and 
how I can  help improve this situation?

Thanks in advance,

Antoine
 
_______________________________________________ 
users mailing list 
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

Reply via email to