summaryrefslogtreecommitdiff
path: root/macros/ImageProcessing
diff options
context:
space:
mode:
authorAbhinav Dronamraju2017-09-29 22:00:40 +0530
committerAbhinav Dronamraju2017-09-29 22:00:40 +0530
commit9bc7ad78e8d7d7acc4b9387aa592542832e80b31 (patch)
tree7fce060665a91de5e5adb12d02003351c3d1fdfc /macros/ImageProcessing
parent33755eb085a3ca8154cf83773b23fbb8aac4ba3e (diff)
parentac0045f12ad3d0938758e9742f4107a334e1afaa (diff)
downloadscilab2c-9bc7ad78e8d7d7acc4b9387aa592542832e80b31.tar.gz
scilab2c-9bc7ad78e8d7d7acc4b9387aa592542832e80b31.tar.bz2
scilab2c-9bc7ad78e8d7d7acc4b9387aa592542832e80b31.zip
NEW FEATURES AND NEW FUNCTIONS
Diffstat (limited to 'macros/ImageProcessing')
-rw-r--r--macros/ImageProcessing/buildmacros.sce26
-rw-r--r--macros/ImageProcessing/core/CV_CreateImage.sci39
-rw-r--r--macros/ImageProcessing/core/CV_GetImgSize.sci39
-rw-r--r--macros/ImageProcessing/core/buildmacros.sce15
-rw-r--r--macros/ImageProcessing/core/names2
-rw-r--r--macros/ImageProcessing/highgui/CV_LoadImage.sci45
-rw-r--r--macros/ImageProcessing/highgui/CV_SaveImage.sci40
-rw-r--r--macros/ImageProcessing/highgui/CV_ShowImage.sci39
-rw-r--r--macros/ImageProcessing/highgui/CV_WaitKey.sci39
-rw-r--r--macros/ImageProcessing/highgui/buildmacros.sce15
-rw-r--r--macros/ImageProcessing/highgui/names4
-rw-r--r--macros/ImageProcessing/imgproc/CV_AdaptiveThreshold.sci45
-rw-r--r--macros/ImageProcessing/imgproc/CV_Blur.sci52
-rw-r--r--macros/ImageProcessing/imgproc/CV_Canny.sci47
-rw-r--r--macros/ImageProcessing/imgproc/CV_CornerHarris.sci52
-rw-r--r--macros/ImageProcessing/imgproc/CV_CvtColor.sci42
-rw-r--r--macros/ImageProcessing/imgproc/CV_Dilate.sci51
-rw-r--r--macros/ImageProcessing/imgproc/CV_DistanceTransform.sci40
-rw-r--r--macros/ImageProcessing/imgproc/CV_Erode.sci51
-rw-r--r--macros/ImageProcessing/imgproc/CV_GaussianBlur.sci53
-rw-r--r--macros/ImageProcessing/imgproc/CV_MedianBlur.sci40
-rw-r--r--macros/ImageProcessing/imgproc/CV_Threshold.sci42
-rw-r--r--macros/ImageProcessing/imgproc/buildmacros.sce15
-rw-r--r--macros/ImageProcessing/imgproc/names11
24 files changed, 844 insertions, 0 deletions
diff --git a/macros/ImageProcessing/buildmacros.sce b/macros/ImageProcessing/buildmacros.sce
new file mode 100644
index 00000000..6431a7df
--- /dev/null
+++ b/macros/ImageProcessing/buildmacros.sce
@@ -0,0 +1,26 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Siddhesh Wani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+OpencvDirs = [ "core", ...
+ "highgui", ...
+ "imgproc"];
+
+
+ current_path = get_absolute_file_path("buildmacros.sce");
+
+ for L=1:size(OpencvDirs,"*")
+ myfile = current_path + filesep() + OpencvDirs(L) + filesep() + "buildmacros.sce";
+ if isfile(myfile) then
+ exec(myfile);
+ end
+end
+
+clear current_path;
diff --git a/macros/ImageProcessing/core/CV_CreateImage.sci b/macros/ImageProcessing/core/CV_CreateImage.sci
new file mode 100644
index 00000000..90b4578b
--- /dev/null
+++ b/macros/ImageProcessing/core/CV_CreateImage.sci
@@ -0,0 +1,39 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Siddhesh Wani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function img = CV_CreateImage(width,height,bit_depth,no_of_channels)
+// function to create an image object of given size and type
+//
+// Calling Sequence
+// CV_CreateImage(image_size,bit_depth,no_of_channels)
+//
+// Parameters
+// image_size: width and height of image
+// bit_depth: Bit depth of image elements
+// no_of_channels: no of channels per pixels
+//
+// Description
+// This function can be used to create opencv image object. For more info about bit depth and channels,please refer to OpenCV documentation
+//
+// This is curretly dummy function. It provides no functionality but is required for providing support for generating C code for OpenCV
+//
+// Examples
+// CV_CreateImage([320 240], "IPL_DEPTH_8U", 1) //to create image of the size 320*240 pixels with 8 bit unsigned each pixels and gray scale image
+// See also
+// CV_LoadImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+img = 0;
+
+endfunction
diff --git a/macros/ImageProcessing/core/CV_GetImgSize.sci b/macros/ImageProcessing/core/CV_GetImgSize.sci
new file mode 100644
index 00000000..2b176dac
--- /dev/null
+++ b/macros/ImageProcessing/core/CV_GetImgSize.sci
@@ -0,0 +1,39 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function imgsize = CV_GetImgSize(img)
+// function to get size of the image (width*height)
+//
+// Calling Sequence
+// CV_GetImgSize(img)
+//
+// Parameters
+// img: image whose size is to be returned
+//
+// Description
+// This function can be used for retriving size information of the image.
+// It returs an array with first image element as width and second as height
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// size = CV_GetImgSize(img)
+// See also
+// CV_LoadImage CV_CreateImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+imgsize = [0 0];
+
+endfunction
diff --git a/macros/ImageProcessing/core/buildmacros.sce b/macros/ImageProcessing/core/buildmacros.sce
new file mode 100644
index 00000000..60fd2843
--- /dev/null
+++ b/macros/ImageProcessing/core/buildmacros.sce
@@ -0,0 +1,15 @@
+//
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2009-2009 - DIGITEO - Bruno JOFRET
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+//
+//
+
+tbx_build_macros(TOOLBOX_NAME, get_absolute_file_path('buildmacros.sce'));
+
+clear tbx_build_macros;
diff --git a/macros/ImageProcessing/core/names b/macros/ImageProcessing/core/names
new file mode 100644
index 00000000..f56c951c
--- /dev/null
+++ b/macros/ImageProcessing/core/names
@@ -0,0 +1,2 @@
+CV_CreateImage
+CV_GetImgSize
diff --git a/macros/ImageProcessing/highgui/CV_LoadImage.sci b/macros/ImageProcessing/highgui/CV_LoadImage.sci
new file mode 100644
index 00000000..c420c7a1
--- /dev/null
+++ b/macros/ImageProcessing/highgui/CV_LoadImage.sci
@@ -0,0 +1,45 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function img = CV_LoadImage(filename,loadtype)
+// function to load an image object from given filename
+//
+// Calling Sequence
+// CV_LoadImage(filename,loadtype)
+//
+// Parameters
+// filename: name of file to be opened
+// loadtype: desired load method
+//
+// Description
+// This function can be used for loading a previously stored image
+//
+// loadtype can take the following values:
+// <itemizedlist>
+// <listitem><para> less than 0 -> image is loaded as is (with alpha channel)</para></listitem>
+// <listitem><para> 0 -> image is loaded as greyscale</para></listitem>
+// <listitem><para> greater than 0 -> 3 channel color image is loaded</para></listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// CV_LoadImage('~/test.jpg',0)
+// See also
+// CV_CreateImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+img = 0;
+
+endfunction
diff --git a/macros/ImageProcessing/highgui/CV_SaveImage.sci b/macros/ImageProcessing/highgui/CV_SaveImage.sci
new file mode 100644
index 00000000..6c5b0bf9
--- /dev/null
+++ b/macros/ImageProcessing/highgui/CV_SaveImage.sci
@@ -0,0 +1,40 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function status = CV_SaveImage(filename,img)
+// function to save an image object as a given filename
+//
+// Calling Sequence
+// CV_SaveImage(filename,img)
+//
+// Parameters
+// filename: name of file image to be saved as
+// img: image to be saved
+//
+// Description
+// This function can be used for saving image. File format is detected
+// from file extension
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// CV_SaveImage('test1.png',img)
+// See also
+// CV_LoadImage CV_CreateImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+status = 0;
+
+endfunction
diff --git a/macros/ImageProcessing/highgui/CV_ShowImage.sci b/macros/ImageProcessing/highgui/CV_ShowImage.sci
new file mode 100644
index 00000000..2300d256
--- /dev/null
+++ b/macros/ImageProcessing/highgui/CV_ShowImage.sci
@@ -0,0 +1,39 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function CV_ShowImage(winname,img)
+// function to show an image
+//
+// Calling Sequence
+// CV_ShowImage(img)
+// CV_ShowImage(winname,img)
+//
+// Parameters
+// winname: name of window in which img is to be shown
+// img: image to be shown already acquired (from file/camera)
+//
+// Description
+// This function can be used for showing images
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// CV_ShowImage(img)
+// See also
+// CV_CreateImage CV_LoadImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+
+endfunction
diff --git a/macros/ImageProcessing/highgui/CV_WaitKey.sci b/macros/ImageProcessing/highgui/CV_WaitKey.sci
new file mode 100644
index 00000000..46fd91f1
--- /dev/null
+++ b/macros/ImageProcessing/highgui/CV_WaitKey.sci
@@ -0,0 +1,39 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function CV_WaitKey(delay)
+// function similar to cvWaitKey
+//
+// Calling Sequence
+// CV_WaitKey(delay)
+//
+// Parameters
+// delay: waiting delay, if 0 then wait till keypress
+//
+// Description
+// This function can be used for inseting some delay. This function must
+// follow CV_ShowImage to display image.
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// CV_ShowImage('',img)
+// CV_WaitKey(0);
+// See also
+// CV_LoadImage CV_ShowImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+
+endfunction
diff --git a/macros/ImageProcessing/highgui/buildmacros.sce b/macros/ImageProcessing/highgui/buildmacros.sce
new file mode 100644
index 00000000..60fd2843
--- /dev/null
+++ b/macros/ImageProcessing/highgui/buildmacros.sce
@@ -0,0 +1,15 @@
+//
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2009-2009 - DIGITEO - Bruno JOFRET
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+//
+//
+
+tbx_build_macros(TOOLBOX_NAME, get_absolute_file_path('buildmacros.sce'));
+
+clear tbx_build_macros;
diff --git a/macros/ImageProcessing/highgui/names b/macros/ImageProcessing/highgui/names
new file mode 100644
index 00000000..a717164a
--- /dev/null
+++ b/macros/ImageProcessing/highgui/names
@@ -0,0 +1,4 @@
+CV_LoadImage
+CV_SaveImage
+CV_ShowImage
+CV_WaitKey
diff --git a/macros/ImageProcessing/imgproc/CV_AdaptiveThreshold.sci b/macros/ImageProcessing/imgproc/CV_AdaptiveThreshold.sci
new file mode 100644
index 00000000..e594f372
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_AdaptiveThreshold.sci
@@ -0,0 +1,45 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function cvtimg = CV_AdaptiveThreshold(srcimg,max_value,adaptive_method,thresh_type, block_size, C)
+// function to adaptively threshold input image
+//
+// Calling Sequence
+// dst = CV_AdaptiveThreshold(srcimg,max_value,adaptive_method,thresh_type,blk_size,c)
+//
+// Parameters
+// src : Source 8-bit single-channel image.
+// max_value : Non-zero value assigned to the pixels for which the condition is satisfied. See the details below.
+// adaptive_method : Adaptive thresholding algorithm to use, ADAPTIVE_THRESH_MEAN_C or ADAPTIVE_THRESH_GAUSSIAN_C .
+// thresh_type : Thresholding type that must be either THRESH_BINARY or THRESH_BINARY_INV .
+// blockSize : Size of a pixel neighborhood that is used to calculate a threshold value for the pixel: 3, 5, 7, and so on.
+// C : Constant subtracted from the mean or weighted mean.Normally, it is positive but may be zero or negative as well.
+//
+// Description
+// This function can be used for adaptively threshold given image
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_AdaptiveThreshold(img,255,"ADAPTIVE_THRESH_MEAN_C", ...
+// "THRESH_BINARY",5,0)
+//
+// See also
+// CV_LoadImage CV_CreateImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+cvtimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_Blur.sci b/macros/ImageProcessing/imgproc/CV_Blur.sci
new file mode 100644
index 00000000..784e4c96
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_Blur.sci
@@ -0,0 +1,52 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function cvtimg = CV_Blur(srcimg,ksize_width,ksize_height,anchor_x,anchor_y,border_type)
+// function to blur image using normalised box filter
+//
+// Calling Sequence
+// dst = CV_Blur(srcimg,ksize_width,ksize_height,anchor_x,anchor_y,border_type)
+//
+// Parameters
+// srcimg : Source image.
+// ksize_width, ksize_height : blurring kernel size.
+// anchor_x, anchor_y : x,y coordinates of anchor point
+// border_type : border mode used to extrapolate pixels outside of the image.
+//
+// Description
+// This function can be used for blurring image using normalised box
+// filter. Image can be of any depth and have any no of channels.
+//
+// border_type can be :
+// <itemizedlist>
+// <listitem>BORDER_REPLICATE: aaaaaa|abcdefgh|hhhhhhh</listitem>
+// <listitem>BORDER_REFLECT: fedcba|abcdefgh|hgfedcb</listitem>
+// <listitem>BORDER_REFLECT_101: gfedcb|abcdefgh|gfedcba</listitem>
+// <listitem>BORDER_WRAP: cdefgh|abcdefgh|abcdefg</listitem>
+// <listitem>BORDER_CONSTANT: iiiiii|abcdefgh|iiiiiii</listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_Blur(img,3,3,-1,-1,"BORDER_CONSTANT")
+//
+// See also
+// CV_LoadImage CV_Threshold, CV_CvtColor
+//
+// Authors
+// Siddhesh Wani
+//
+
+cvtimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_Canny.sci b/macros/ImageProcessing/imgproc/CV_Canny.sci
new file mode 100644
index 00000000..be1c2ccb
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_Canny.sci
@@ -0,0 +1,47 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function edges = CV_Canny(srcimg,threhold1,threshold2,aperture_size,L2gradient)
+//Finds edges in image using Canny algorithm
+//
+// Calling Sequence
+// edges = CV_Canny(srcimg,threhold1,threshold2,aperture_size,L2gradient)
+//
+// Parameters
+// srcimg : single-channel 8-bit input image.
+// threshold1 : first threshold for the hysteresis procedure.
+// threshold2 : second threshold for the hysteresis procedure.
+// aperture_size : aperture size for the Sobel() operator.
+// L2gradient : a flag, indicating whether a more accurate
+//
+// Description
+// This function can be used for finding edes in single channel 8 bit
+// image. 'aperture_size' and 'L2gradient' are optionals. By default,
+// aperture_size is 3 and L2gradient is false.
+//
+// For L2gradient: L_2 norm =sqrt{(dI/dx)^2 + (dI/dy)^2} should be used to calculate the image gradient magnitude (L2gradient=1 ), or whether the default L_1 norm =|dI/dx|+|dI/dy| is enough (L2gradient=0).
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_CvtColor(img,"CV_RGB2GRAY");
+// edge = CV_Canny(dst,50,100,3,0);
+// See also
+// CV_LoadImage CV_CvtColor
+//
+// Authors
+// Siddhesh Wani
+//
+
+edges = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_CornerHarris.sci b/macros/ImageProcessing/imgproc/CV_CornerHarris.sci
new file mode 100644
index 00000000..ccb83cb7
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_CornerHarris.sci
@@ -0,0 +1,52 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function edges = CV_CornerHarris(srcimg,blocksize,ksize,k,border_type)
+//Finds edges in image using Harris algorithm
+//
+// Calling Sequence
+// edges = CV_CornerHarris(srcimg,blocksize,ksize,k,border_type)
+//
+// Parameters
+// srcimg: Input single-channel 8-bit or floating-point image.
+// blockSize: Neighborhood size
+// ksize: Aperture parameter for the Sobel() operator.
+// k: Harris detector free parameter.
+// border_type: border mode used to extrapolate pixels outside of the image.
+//
+// Description
+// The function runs the Harris edge detector on the image. For each pixel (x, y) it calculates a 2 * 2 gradient covariance matrix M(x,y) over a blockSize * blockSize neighborhood. Then, it computes the following characteristic: dst(x,y) = det(M(x,y)) - k .tr(M(x,y))^2. Corners in the image can be found as the local maxima of this response map.
+//
+// border_type can be :
+// <itemizedlist>
+// <listitem>BORDER_REPLICATE: aaaaaa|abcdefgh|hhhhhhh</listitem>
+// <listitem>BORDER_REFLECT: fedcba|abcdefgh|hgfedcb</listitem>
+// <listitem>BORDER_REFLECT_101: gfedcb|abcdefgh|gfedcba</listitem>
+// <listitem>BORDER_WRAP: cdefgh|abcdefgh|abcdefg</listitem>
+// <listitem>BORDER_CONSTANT: iiiiii|abcdefgh|iiiiiii</listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_CvtColor(img,"CV_RGB2GRAY");
+// edge = CV_CornerHarris(dst,5,3,1,"BORDER_REPLICATE");
+// See also
+// CV_LoadImage CV_CvtColor
+//
+// Authors
+// Siddhesh Wani
+//
+
+edges = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_CvtColor.sci b/macros/ImageProcessing/imgproc/CV_CvtColor.sci
new file mode 100644
index 00000000..dcf756c0
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_CvtColor.sci
@@ -0,0 +1,42 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function cvtimg = CV_CvtColor(srcimg,code)
+// function to convert image from one colorspace to other colorspace
+//
+// Calling Sequence
+// CV_CvtColor(srcimg,code)
+//
+// Parameters
+// srcimg: source image to be converted
+// dstimg: destination image in which to store converted image
+// code: String specifying conversion type. Same as defined in OpenCV. for eg. 'CV_RGB2GRAY' for conversion from RGB image to grayscale image
+// dstCn: no of channels in destination image (0 by default)
+//
+// Description
+// This function can be used for converting an image to other colorspace.
+// Refer OpenCV documentation for list of available conversions
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_CvtColor(img,'CV_RGB2GRAY')
+// See also
+// CV_LoadImage CV_CreateImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+cvtimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_Dilate.sci b/macros/ImageProcessing/imgproc/CV_Dilate.sci
new file mode 100644
index 00000000..25e2c844
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_Dilate.sci
@@ -0,0 +1,51 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function cvtimg = CV_Dilate(srcimg,dilation_type,dilation_size,iterations,border_type,border_value)
+// dilates an image by using a specific structuring element.
+//
+// Calling Sequence
+// cvtimg = CV_Dilate(srcimg,dilation_type,dilation_size,[iterations,border_type,border_value])
+// Parameters
+// src : input image; the number of channels can be arbitrary, but the depth should be one of CV_8U, CV_16U, CV_16S, CV_32F or CV_64F.
+// dilation_type : can be one of MORPH_RECT, MORPH_CROSS,MORPH_ELLIPSE
+// dilation_size : size of kernel to be used for erosion. Must be odd
+// iterations : number of times erosion is applied.
+// border_type : pixel extrapolation method.
+// border_value : border value in case of a constant border
+//
+// Description
+// This function can be used for eroding an image. Kernel used for erosion is decided by type and size. Size must always be odd. Anchor pint of kernel is always center of kernel. Input arguements 'iterations(1), border_type(BORDER_CONSTANT) and border_value' are optionals. Whwn not specified, default values as as mentioned in brackets.
+//
+// border_type can be :
+// <itemizedlist>
+// <listitem><para> BORDER_REPLICATE: aaaaaa|abcdefgh|hhhhhhh </para></listitem>
+// <listitem><para> BORDER_REFLECT: fedcba|abcdefgh|hgfedcb </para></listitem>
+// <listitem><para> BORDER_REFLECT_101: gfedcb|abcdefgh|gfedcba </para></listitem>
+// <listitem><para> BORDER_WRAP: cdefgh|abcdefgh|abcdefg </para></listitem>
+// <listitem><para> BORDER_CONSTANT: iiiiii|abcdefgh|iiiiiii </para></listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_Erode(img,"MORPH_RECT",3,1,"BORDER_CONSTANT",0);
+// See also
+// CV_LoadImage CV_Erode
+//
+// Authors
+// Siddhesh Wani
+//
+
+cvtimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_DistanceTransform.sci b/macros/ImageProcessing/imgproc/CV_DistanceTransform.sci
new file mode 100644
index 00000000..1f304a68
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_DistanceTransform.sci
@@ -0,0 +1,40 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function dstimg = CV_DistanceTransform(srcimg,distance_type,mask_size)
+// function to calculate distance to closest zero pixels for each pixel
+//
+// Calling Sequence
+// dst = CV_DistanceTransform(srcimg,distance_type,mask_size)
+//
+// Parameters
+// srcimg : Source 8-bit single-channel image.
+// distance_type : Type of distance. It can be CV_DIST_L1, CV_DIST_L2 , or CV_DIST_C
+// mask_size : Size of the distance transform mask
+//
+// Description
+// This function can be used to calculate distance to closest zero pixel for each pixel of the source image. Output is 32 bit floatingpoint, single channel image of the same size as that of source image.
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_DistanceTransform(img,"CV_DIST_L1",3)
+// See also
+// CV_LoadImage CV_CreateImage CV_CvtColor
+//
+// Authors
+// Siddhesh Wani
+//
+
+dstimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_Erode.sci b/macros/ImageProcessing/imgproc/CV_Erode.sci
new file mode 100644
index 00000000..73f3ee59
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_Erode.sci
@@ -0,0 +1,51 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function cvtimg = CV_Erode(srcimg,erosion_type,erosion_size,iterations,border_type,border_value)
+// Erodes an image by using a specific structuring element.
+//
+// Calling Sequence
+// cvtimg = CV_Erode(srcimg,erosion_type,erosion_size,[iterations,border_type,border_value])
+// Parameters
+// src : input image; the number of channels can be arbitrary, but the depth should be one of CV_8U, CV_16U, CV_16S, CV_32F or CV_64F.
+// erosion_type : can be one of : MORPH_RECT, MORPH_CROSS, MORPH_ELLIPSE
+// erosion_size : size of kernel to be used for erosion. Must be odd
+// iterations : number of times erosion is applied.
+// border_type : pixel extrapolation method.
+// border_value : border value in case of a constant border
+//
+// Description
+// This function can be used for eroding an image. Kernel used for erosion is decided by type and size. Size must always be odd. Anchor pint of kernel is always center of kernel. Input arguements 'iterations(1), border_type(BORDER_CONSTANT) and border_value' are optionals. Whwn not specified, default values as as mentioned in brackets.
+//
+// border_type can be :
+// <itemizedlist>
+// <listitem>BORDER_REPLICATE: aaaaaa|abcdefgh|hhhhhhh</listitem>
+// <listitem>BORDER_REFLECT: fedcba|abcdefgh|hgfedcb</listitem>
+// <listitem>BORDER_REFLECT_101: gfedcb|abcdefgh|gfedcba</listitem>
+// <listitem>BORDER_WRAP: cdefgh|abcdefgh|abcdefg</listitem>
+// <listitem>BORDER_CONSTANT: iiiiii|abcdefgh|iiiiiii</listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_Erode(img,"MORPH_RECT",3,1,"BORDER_CONSTANT",0);
+// See also
+// CV_LoadImage CV_Dilate
+//
+// Authors
+// Siddhesh Wani
+//
+
+cvtimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_GaussianBlur.sci b/macros/ImageProcessing/imgproc/CV_GaussianBlur.sci
new file mode 100644
index 00000000..814355e0
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_GaussianBlur.sci
@@ -0,0 +1,53 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function cvtimg = CV_GaussianBlur(srcimg,ksize_width,ksize_height,sigma_x,sigma_y,border_type)
+// function to blur image using gaussian filter
+//
+// Calling Sequence
+// cvtimg = CV_GaussianBlur(srcimg,ksize_width,ksize_height,sigma_x,sigma_y,border_type)
+//
+// Parameters
+// srcimg : Source image.
+// ksize_width, ksize_height : blurring kernel size. must be odd.
+// sigmaX : Gaussian kernel standard deviation in X direction.
+// sigmaY : Gaussian kernel standard deviation in Y direction;
+// border_type : border mode used to extrapolate pixels outside of the image.
+//
+// Description
+// This function can be used for blurring image using gaussian filter. Image can be of any depth and have any no of channels.
+//
+// For sigmaX and sigmaY : if sigmaY is zero, it is set to be equal to sigmaX, if both sigmas are zeros, they are computed from ksize.width and ksize.height , respectively.
+//
+// border_type can be :
+// <itemizedlist>
+// <listitem>BORDER_REPLICATE: aaaaaa|abcdefgh|hhhhhhh</listitem>
+// <listitem>BORDER_REFLECT: fedcba|abcdefgh|hgfedcb</listitem>
+// <listitem>BORDER_REFLECT_101: gfedcb|abcdefgh|gfedcba</listitem>
+// <listitem>BORDER_WRAP: cdefgh|abcdefgh|abcdefg</listitem>
+// <listitem>BORDER_CONSTANT: iiiiii|abcdefgh|iiiiiii</listitem>
+// </itemizedlist>
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_GaussianBlur(img,3,3,0,0,"BORDER_CONSTANT")
+// See also
+// CV_LoadImage CV_Blur, CV_CvtColor
+//
+// Authors
+// Siddhesh Wani
+//
+
+cvtimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_MedianBlur.sci b/macros/ImageProcessing/imgproc/CV_MedianBlur.sci
new file mode 100644
index 00000000..5f6069a7
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_MedianBlur.sci
@@ -0,0 +1,40 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function cvtimg = CV_MedianBlur(srcimg,ksize)
+// function to blur image using median filter
+//
+// Calling Sequence
+// cvtimg = CV_MedianBlur(srcimg,ksize)
+//
+// Parameters
+// srcimg : input 1-, 3-, or 4-channel image; when ksize is 3 or 5, the image depth should be CV_8U, CV_16U, or CV_32F, for larger aperture sizes, it can only be CV_8U.
+// ksize_width : aperture linear size; it must be odd and greater than 1, for example: 3, 5, 7 ...
+//
+// Description
+// This function can be used for blurring image using median
+// filter. Image can be of any depth and have any no of channels.
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_MedianBlur(img,3)
+// See also
+// CV_GaussianBlur, CV_Blur, CV_CvtColor
+//
+// Authors
+// Siddhesh Wani
+//
+
+cvtimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/CV_Threshold.sci b/macros/ImageProcessing/imgproc/CV_Threshold.sci
new file mode 100644
index 00000000..0563c360
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/CV_Threshold.sci
@@ -0,0 +1,42 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function cvtimg = CV_Threshold(srcimg,threshold,max_value,thresh_type)
+// function to threshold input image
+//
+// Calling Sequence
+// dst = CV_Threshold(srcimg,code,threshold,max_value,thresh_type)
+//
+// Parameters
+// srcimg: source image to be converted
+// threshold: threshold value
+// max_value: maximum value to be used with THRESH_BINARY and THRESH_BINARY_INV
+// thresh_type: Type for threshold. It can one of the following: THRESH_BINARY, THRESH_BINARY_INV, THRESH_TRUNC, THRESH_TOZERO, THRESH_TOZERO_INV
+//
+// Description
+// This function can be used for converting an image to other colorspace.
+// Refer OpenCV documentation for list of available conversions
+//
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for OpenCV
+//
+// Examples
+// img = CV_LoadImage('~/test.jpg',0)
+// dst = CV_Threshold(img,100,255,'THRESH_BINARY')
+// See also
+// CV_LoadImage CV_CreateImage
+//
+// Authors
+// Siddhesh Wani
+//
+
+cvtimg = 0
+
+endfunction
diff --git a/macros/ImageProcessing/imgproc/buildmacros.sce b/macros/ImageProcessing/imgproc/buildmacros.sce
new file mode 100644
index 00000000..60fd2843
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/buildmacros.sce
@@ -0,0 +1,15 @@
+//
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2009-2009 - DIGITEO - Bruno JOFRET
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+//
+//
+
+tbx_build_macros(TOOLBOX_NAME, get_absolute_file_path('buildmacros.sce'));
+
+clear tbx_build_macros;
diff --git a/macros/ImageProcessing/imgproc/names b/macros/ImageProcessing/imgproc/names
new file mode 100644
index 00000000..16240f53
--- /dev/null
+++ b/macros/ImageProcessing/imgproc/names
@@ -0,0 +1,11 @@
+CV_AdaptiveThreshold
+CV_Blur
+CV_Canny
+CV_CornerHarris
+CV_CvtColor
+CV_Dilate
+CV_DistanceTransform
+CV_Erode
+CV_GaussianBlur
+CV_MedianBlur
+CV_Threshold