2017-07-18 1 views
0

J'ai une fonction sur le traitement d'image écrite en Matlab. Je veux le convertir en un fichier exécutable afin que je puisse utiliser cette fonction dans d'autres applications. J'ai essayé les codeurs Matlab, mais comme j'utilise une version d'essai, je n'ai pas le codeur Matlab. Ce qui peut être fait? Le même code écrit en Octave peut-il être converti en un fichier exécutable?Conversion du code Matlab/Octave en un fichier exécutable

img2=rgb2gray(i1); 
imshow(img2); 
img3=imtophat(img2,strel('disk',15)); 
img4=imadjust(img3); 
layer=img4(:,:,1); 
img5=layer>100 & layer<250; 
img6=imfill(img5,'holes'); 
img7=bwareaopen(img6,5); 
[L,ans]=bwlabeln(img7); 
imshow(img7); 
I=imread(i1); 
Ians=CarDentIdentification(I); 
% Display the original image and the segmented image side-by-side. 
imshowpair(I,Ians,'montage') 
+1

non, pas dans GNU Octave – Andy

+1

voir [ici] (https://stackoverflow.com/questions/3843522/how-do-i-create-a-simple-octave-distributable-without-installing-octave) pour plus d'info –

+0

Le codeur matlab est cher. Je suppose qu'opencv est la seule option. Merci quand même. – Harshita

Répondre

0

Je ne sais pas comment cela fonctionne sur Windows ou Mac mais sur les systèmes UNIX, je suis en mesure d'appeler mes scripts d'octave GNU comme exécutables en ajoutant cette ligne au sommet de mon script d'octave

#!/usr/bin/octave

Le "#!" est récupéré par le chargeur de programme de votre système d'exploitation et indique que le fichier suivant est en fait un script. Le chargeur recherche ensuite le chemin du fichier donné pour l'emplacement de l'interpréteur. Si votre interpréteur Octave n'est pas à "/ usr/bin/octave", vous devez remplacer cette section par l'emplacement correct. Ensuite, vous devez indiquer à votre système d'exploitation que ce script est un fichier exécutable. En bash, vous faites cela avec cette commande.

chmod + x octaveFile.m

de ce que vous appelez let votre script d'octave comme tout autre exécutable. Dans mon cas, j'ai ensuite appelé mes scripts de python en utilisant subprocess.call ('octaveFile.m').

Notez qu'il ne s'agit pas d'une fonctionnalité MATLAB ou Octave. Ceci est fait par le système d'exploitation, les résultats peuvent donc varier.