{"nbformat_minor": 0, "worksheets": [{"cells": [{"source": ["Shape Retrieval with Geodesic Descriptors\n", "=========================================\n", "\n*Important:* Please read the [installation page](http://gpeyre.github.io/numerical-tours/installation_matlab/) for details about how to install the toolboxes.\n", "$\\newcommand{\\dotp}[2]{\\langle #1, #2 \\rangle}$\n", "$\\newcommand{\\enscond}[2]{\\lbrace #1, #2 \\rbrace}$\n", "$\\newcommand{\\pd}[2]{ \\frac{ \\partial #1}{\\partial #2} }$\n", "$\\newcommand{\\umin}[1]{\\underset{#1}{\\min}\\;}$\n", "$\\newcommand{\\umax}[1]{\\underset{#1}{\\max}\\;}$\n", "$\\newcommand{\\umin}[1]{\\underset{#1}{\\min}\\;}$\n", "$\\newcommand{\\uargmin}[1]{\\underset{#1}{argmin}\\;}$\n", "$\\newcommand{\\norm}[1]{\\|#1\\|}$\n", "$\\newcommand{\\abs}[1]{\\left|#1\\right|}$\n", "$\\newcommand{\\choice}[1]{ \\left\\{ \\begin{array}{l} #1 \\end{array} \\right. }$\n", "$\\newcommand{\\pa}[1]{\\left(#1\\right)}$\n", "$\\newcommand{\\diag}[1]{{diag}\\left( #1 \\right)}$\n", "$\\newcommand{\\qandq}{\\quad\\text{and}\\quad}$\n", "$\\newcommand{\\qwhereq}{\\quad\\text{where}\\quad}$\n", "$\\newcommand{\\qifq}{ \\quad \\text{if} \\quad }$\n", "$\\newcommand{\\qarrq}{ \\quad \\Longrightarrow \\quad }$\n", "$\\newcommand{\\ZZ}{\\mathbb{Z}}$\n", "$\\newcommand{\\CC}{\\mathbb{C}}$\n", "$\\newcommand{\\RR}{\\mathbb{R}}$\n", "$\\newcommand{\\EE}{\\mathbb{E}}$\n", "$\\newcommand{\\Zz}{\\mathcal{Z}}$\n", "$\\newcommand{\\Ww}{\\mathcal{W}}$\n", "$\\newcommand{\\Vv}{\\mathcal{V}}$\n", "$\\newcommand{\\Nn}{\\mathcal{N}}$\n", "$\\newcommand{\\NN}{\\mathcal{N}}$\n", "$\\newcommand{\\Hh}{\\mathcal{H}}$\n", "$\\newcommand{\\Bb}{\\mathcal{B}}$\n", "$\\newcommand{\\Ee}{\\mathcal{E}}$\n", "$\\newcommand{\\Cc}{\\mathcal{C}}$\n", "$\\newcommand{\\Gg}{\\mathcal{G}}$\n", "$\\newcommand{\\Ss}{\\mathcal{S}}$\n", "$\\newcommand{\\Pp}{\\mathcal{P}}$\n", "$\\newcommand{\\Ff}{\\mathcal{F}}$\n", "$\\newcommand{\\Xx}{\\mathcal{X}}$\n", "$\\newcommand{\\Mm}{\\mathcal{M}}$\n", "$\\newcommand{\\Ii}{\\mathcal{I}}$\n", "$\\newcommand{\\Dd}{\\mathcal{D}}$\n", "$\\newcommand{\\Ll}{\\mathcal{L}}$\n", "$\\newcommand{\\Tt}{\\mathcal{T}}$\n", "$\\newcommand{\\si}{\\sigma}$\n", "$\\newcommand{\\al}{\\alpha}$\n", "$\\newcommand{\\la}{\\lambda}$\n", "$\\newcommand{\\ga}{\\gamma}$\n", "$\\newcommand{\\Ga}{\\Gamma}$\n", "$\\newcommand{\\La}{\\Lambda}$\n", "$\\newcommand{\\si}{\\sigma}$\n", "$\\newcommand{\\Si}{\\Sigma}$\n", "$\\newcommand{\\be}{\\beta}$\n", "$\\newcommand{\\de}{\\delta}$\n", "$\\newcommand{\\De}{\\Delta}$\n", "$\\newcommand{\\phi}{\\varphi}$\n", "$\\newcommand{\\th}{\\theta}$\n", "$\\newcommand{\\om}{\\omega}$\n", "$\\newcommand{\\Om}{\\Omega}$\n"], "metadata": {}, "cell_type": "markdown"}, {"source": ["This numerical tour explores the use of geodesic distances within shapes\n", "to perform shape retrieval.\n", "\n", "\n", "This tour is mostly inspired from the following work:\n", "\n", "\n", "_Matching 2D and 3D Articulated Shapes using Eccentricity_,\n", "A. Ion, N. M. Artner, G. Peyre, W. G. Kropatsch and L. Cohen,\n", "Preprint Hal-00365019, January 2009."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 2, "cell_type": "code", "language": "python", "metadata": {}, "input": ["addpath('toolbox_signal')\n", "addpath('toolbox_general')\n", "addpath('toolbox_graph')\n", "addpath('solutions/shapes_5_geodesic_descriptors')"]}, {"source": ["Geodesic Distances Within a Binary Shape\n", "----------------------------------------\n", "By restricting shortest path to lie within a shape, one create a geodesic\n", "metric that is different from the Euclidean one if the shape is not\n", "convex.\n", "\n", "\n", "A binary shape is represented as a binary image."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 3, "cell_type": "code", "language": "python", "metadata": {}, "input": ["n = 200;\n", "name = 'centaur1';\n", "M = load_image(name,n);\n", "M = perform_blurring(M,5);\n", "M = double( rescale( M )>.5 );\n", "if M(1)==1 \n", " M = 1-M;\n", "end"]}, {"source": ["Display the shape."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAGwCAIAAADOgk3lAAAACXBIWXMAAAsSAAALEgHS3X78AAAA\nIXRFWHRTb2Z0d2FyZQBBcnRpZmV4IEdob3N0c2NyaXB0IDguNTRTRzzSAAAMzElEQVR4nO3dy3bj\nKAAE0DBn/v+XNQv3pH2c2JYlQBTcu+5O5EdUKkCobNv2BQBp/rn6AADgCAEGQCQBBkAkAQZAJAEG\nQCQBBkAkAQZAJAEGQCQBBkAkAQZAJAEGQCQBBkAkAQZAJAEGQCQBBkAkAQZAJAEGQCQBBkAkAQZA\nJAEGQCQBBkAkAQZAJAEGQCQBBkAkAQZAJAEGQCQBBkAkAQZAJAEGQCQBBkAkAQZAJAEGQCQBBkAk\nAQZAJAEGQCQBBkAkAQZAJAEGQCQBBkAkAQZApH+vPgDglFLK23+zbVuHI4HONDAAIhWXZpBoT/F6\nwR8+E9DAAIikgUGYk93rgTMAuTQwACIJMFhaKaVupYNuDCFCjNZJ42xAFg0MgEhuZIYARvngJw0M\ngEgCDIBIAgyASAIM+MOSerIIMAAiCTAAIgkwACIJMAAiuZEZ+MNWUmTRwACIJMAAiCTAAIgkwACI\nJMAAiCTAAIjkicwQo91Ghc4DJNLAAIjkRmZYmu5FLg0MgEgCDIBIAgyASAIMgEiW0UOYWovp/e2T\nTgMDIJIAAyCSAIMw27YZ/YMvAQZAKAEGK9LhmIAAAyCSAAMgkgADIJLd6GEtZr+YhgYGQCQBBkAk\nQ4gQptZeiJBOAwMgkgADIJIAAyCS54FBgOrzXv7wmYAGBkAkDQzG1WHBoTMAuQQYjOWSVfLOAyQy\nhAhAJA0MLjPsLclOC0TQwACIpIFBD8OWrbecIhiWBgZAJA0M2srtXi84bzACAQYNTZle35w9uJYh\nRAAiaWDQxNzd65sTCBfSwACIJMCA40opi3RNBiTAAIgkwACI9O/VBwCzMaQGfWhgAEQSYMBZlnJw\nCQEGQCQBBkAkAQZAJKsQoRrzQNCTBgbUYSkHnQkwACIJMAAiCTAAIgkwACIJMAAiCTAAIgkwACK5\nkZkL7L9baNu2pkdSkVugoDMBRhO1zuYPPycoz4DWDCECEEkDo4Juo2f3v0gbg8VpYABE0sA4YoQF\nC7dj0MNgWRoYAJE0MHapUrkOtKW3v1cPg2UJMJ46E1q1EuX+54wwbslbpRTXE/RhCBGASBoYvxhz\n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\nqhjspoEBEMkcGAH29Jhhv8nHlssP+3JgHBoYAJE0MGLoYcA9DQx6OLYviQ074AUBBkAkQ4gkyb2v\n+d6BUjX4K4JLaGAARBJg0Js6BVUIMAAimQMjz9s5pJRvtQ1/4QwBRqoFYyzlFUEfhhABiGQ3erjY\nd696W8Vu/0APgxsNDIBIAoxUbzdnsgkTzE2AARBJgMEodm74a4dfuBFgzMy5HiYmwACIJMBgLPsH\nEjscDIxMgAEQyVZSzGBPHcn6qttfCt7SwACIZCspGNGtV+3pYff/RhtjKRoYAJEEGMzD0kSWIsBg\nKu7dZh0CDIBIAgzGtfOmZliTAAMgkgADIJIAAyCSAGMGJopgQfZCZBI7146HfuFtjQg/aWAARLIX\nIgR4uzWi4sWCNDAAImlgEEPNgnsaGACRBBgAkQQYM7D/OixIgAEQSYABEEmAARBJgLEWs2UwDQEG\nQCQBxnJKKXoYTECAARBJgAEQSYCxKAOJkE6AARBJgAEQSYABEEmAMQMPyoIFCTAAIgkwACIVYy/M\nZP/KeN98SKeBARBJA2Naz9qY7zzMQQMDIJIGBkAkDQyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyA\nSAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIMgEgCDIBI\nAgyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIMgEgC\nDIBIAgyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIMgEgCDIBIAgyASAIM\ngEgCDIBIAgyASAIMgEj/AUa+EcqkWSWpAAAAAElFTkSuQmCC\n", "output_type": "display_data"}], "prompt_number": 4, "cell_type": "code", "language": "python", "metadata": {}, "input": ["clf;\n", "imageplot(-M);"]}, {"source": ["Compute its boundary"], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 5, "cell_type": "code", "language": "python", "metadata": {}, "input": ["bound = compute_shape_boundary(M);\n", "nbound = size(bound,2);"]}, {"source": ["Parameters for the Fast Marching: constant speed |W|, but retricted using |L| to the\n", "inside of the shape."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 6, "cell_type": "code", "language": "python", "metadata": {}, "input": ["W = ones(n);\n", "L = zeros(n)-Inf; L(M==1) = +Inf;"]}, {"source": ["Initial point for the geodesic computation."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 7, "cell_type": "code", "language": "python", "metadata": {}, "input": ["start_points = [95; 20];"]}, {"source": ["Compute the geodesic distance without constraint using Fast Marching.\n", "It is simply the Euclidean distance."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 8, "cell_type": "code", "language": "python", "metadata": {}, "input": ["options.constraint_map = [];\n", "D0 = perform_fast_marching(W, start_points, options);\n", "D0(M==0) = Inf;"]}, {"source": ["Display Euclidean distance."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAGwCAIAAADOgk3lAAAACXBIWXMAAAsSAAALEgHS3X78AAAA\nIXRFWHRTb2Z0d2FyZQBBcnRpZmV4IEdob3N0c2NyaXB0IDguNTRTRzzSAAAgAElEQVR4nO3df6Qd\n1/o/8PfzObuSiKOi4qqrrquqKiKiot+oqqqKioioqKjqp+LKtyLyiYqKqrqqoqIiIiqq+r3qioqK\niKioqKqKKyoioqKqPuqKKyrqiJzIjuf7x5pZs2ZmrdmzZ8/+sWa/X47cObNmz5597uk851nrWWtE\nVUFERBSb/5r2BRARETXBAEZERFFiACMioigxgBERUZQYwIiIKEoMYEREFCUGMCIiihIDGBERRYkB\njIiIosQARkREUWIAIyKiKDGAERFRlBjAiIgoSgxgREQUJQYwIiKKEgMYERFFiQGMiIiixABGRERR\nYgAjIqIoMYAREVGUGMCIiChKDGBERBQlBjAiIooSAxgREUWJAYyIiKLEAEZERFFiACMioigxgBER\nUZQYwIiIKEoMYEREFCUGMCIiihIDGBERRYkBjIiIosQARkREUWIAIyKiKDGAERFRlBjAiIgoSgxg\nREQUJQYwIiKKUm/aF0BEIxGRgceo6gSuhGjCmIERRaxO9Kp/GFFchH+aEcVoxJjE//CpAxjAiCJT\nCF36NACgn/67DPkF+pfcTvlP8Gy8A1C8GMCIImMCmD7rBC3kAhiQxrD8ziye3cvOxjsAxYtFHEQx\nydKv0H+7PQDQx508DMBKAGkYA7QHuZM7IcMYxYhFHETzSFdAF6Z9EUSjYQAjioZNv3Qr5Dug5/ta\nCawEetAnIf8bOCb90hXFMxNFhGNgRHHIotd2AEAfch76YmkMzGykg15yA/p4cWfhSHmQvAXvBhQX\nZmBEEcii1yvZTn0RcnHAC/VJyC9DvwtRFJiBEc26LHq9CqCYQhXzMF+yleRhgQwMyOoSeUOgiDAD\nI4pbrTzs8SHyMKJYMIARxSNUi7ElXNNhj3kS8u+kvsPzRRQhBjCiLqiThwHBPIzliBQjBjCieFTn\nWG4ettKTbOmTVSfR1cmbMIZRLBjAiKIh/6ia+JX0BFYHuXWVk8OIosIARtQduoUFHTRHWEZPNOuy\nMvq9kBMAoLudOvhC3XwfcgEA9MXczsKRciNdKdGprZffk3fkbYGiwAyMKCa6t8YxW0Z7C0YvigQD\n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\n", "output_type": "display_data"}], "prompt_number": 9, "cell_type": "code", "language": "python", "metadata": {}, "input": ["clf;\n", "options.display_levelsets = 1;\n", "options.pstart = start_points;\n", "options.nbr_levelsets = 30;\n", "display_shape_function(D0, options);"]}, {"source": ["Compute the geodesic distance with constraints using Fast Marching."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 10, "cell_type": "code", "language": "python", "metadata": {}, "input": ["options.constraint_map = L;\n", "D = perform_fast_marching(W, start_points, options);"]}, {"source": ["Display geodesic distance."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "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\nAAAASUVORK5CYII=\n", "output_type": "display_data"}], "prompt_number": 11, "cell_type": "code", "language": "python", "metadata": {}, "input": ["clf;\n", "options.nbr_levelsets = 60;\n", "display_shape_function(D, options);"]}, {"source": ["__Exercise 1__\n", "\n", "Using |options.nb_iter_max| display the progression of the Fast\n", "Marching."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "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\nAABJRU5ErkJggg==\n", "output_type": "display_data"}], "prompt_number": 12, "cell_type": "code", "language": "python", "metadata": {}, "input": ["exo1()"]}, {"collapsed": false, "outputs": [], "prompt_number": 13, "cell_type": "code", "language": "python", "metadata": {}, "input": ["%% Insert your code here."]}, {"source": ["Compute a geodesic curve."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 14, "cell_type": "code", "language": "python", "metadata": {}, "input": ["end_points = [27;112];\n", "p = compute_geodesic(D,end_points);"]}, {"source": ["Display the path."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "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\n", "output_type": "display_data"}], "prompt_number": 15, "cell_type": "code", "language": "python", "metadata": {}, "input": ["ms = 30; lw = 3;\n", "clf; hold on;\n", "imageplot(1-M);\n", "h = plot(end_points(2),end_points(1), '.b'); set(h, 'MarkerSize', ms);\n", "h = plot(start_points(2),start_points(1), '.r'); set(h, 'MarkerSize', ms);\n", "h = plot( p(2,:), p(1,:), 'g' ); set(h, 'LineWidth', lw);\n", "axis ij;"]}, {"source": ["__Exercise 2__\n", "\n", "Compute curves joining the start point to several points along the\n", "boundary."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "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\n", "output_type": "display_data"}], "prompt_number": 16, "cell_type": "code", "language": "python", "metadata": {}, "input": ["exo2()"]}, {"collapsed": false, "outputs": [], "prompt_number": 17, "cell_type": "code", "language": "python", "metadata": {}, "input": ["%% Insert your code here."]}, {"source": ["Local Geodesic Descriptors\n", "--------------------------\n", "In order to build shape signatures, we compute geodesic distance to all\n", "the points on the boundary. We then retrieve some caracteristics from\n", "these geodesic distance map.\n", "\n", "\n", "Select a uniform set of points on the boundary."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 18, "cell_type": "code", "language": "python", "metadata": {}, "input": ["nb_samples = 600;\n", "sel = round(linspace(1,nbound+1,nb_samples+1)); sel(end) = [];\n", "samples = bound(:,sel);"]}, {"source": ["__Exercise 3__\n", "\n", "Build a collection |E| of distance maps, so that |E(:,:,i)| is the\n", "geodesic distance to |samples(:,i)|."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 19, "cell_type": "code", "language": "python", "metadata": {}, "input": ["exo3()"]}, {"collapsed": false, "outputs": [], "prompt_number": 20, "cell_type": "code", "language": "python", "metadata": {}, "input": ["%% Insert your code here."]}, {"source": ["normalize distances."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 21, "cell_type": "code", "language": "python", "metadata": {}, "input": ["E = E/mean(E(:));"]}, {"source": ["Display some locations"], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "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\nthU1ySvwqGYAAAAASUVORK5CYII=\n", "output_type": "display_data"}], "prompt_number": 22, "cell_type": "code", "language": "python", "metadata": {}, "input": ["points = [[80;20] [95;112] [156;42]];\n", "col = {'r', 'g', 'b', 'k'};\n", "clf; hold on;\n", "imageplot(-M);\n", "for i=1:3\n", " h = plot(points(2,i), points(1,i), [col{i} '.']);\n", " set(h, 'MarkerSize', 40);\n", "end\n", "axis('ij');"]}, {"source": ["Display three different features at some locations."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "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\n", "output_type": "display_data"}], "prompt_number": 23, "cell_type": "code", "language": "python", "metadata": {}, "input": ["clf;\n", "col = {'r', 'g', 'b', 'k'};\n", "for i=1:3\n", " subplot(3,1,i); \n", " d = E(points(1,i),points(2,i), :); \n", " u = hist(d(:), 15); axis tight;\n", " h = bar(u, col{i}); axis('tight');\n", " set(gca, 'XTickLabel', []);\n", "end"]}, {"source": ["Global Geodesic Descriptors\n", "---------------------------\n", "One can retain a single statistic from the local descriptors, such as the\n", "min, max, mean or median values. The histogram of these values are the\n", "global descriptors.\n", "\n", "\n", "Compute several statistics."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 24, "cell_type": "code", "language": "python", "metadata": {}, "input": ["clear A;\n", "A{1} = max(E,[],3);\n", "A{2} = min(E,[],3);\n", "A{3} = mean(E,3);\n", "A{4} = median(E,3);\n", "titles = {'Max', 'Min', 'Mean', 'Median'};"]}, {"source": ["Display as images."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "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\n", "output_type": "display_data"}], "prompt_number": 25, "cell_type": "code", "language": "python", "metadata": {}, "input": ["nbr = [20 5 30 30];\n", "options.pstart = [];\n", "clf;\n", "for i=1:4\n", " subplot(2,2,i);\n", " options.nbr_levelsets = nbr(i);\n", " display_shape_function(A{i}, options);\n", " title(titles{i});\n", "end\n", "colormap jet(256);"]}, {"source": ["Display histograms of the statistics."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [{"metadata": {}, "png": "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\nGACRBBgAkf4PTAx+kJ4OLnQAAAAASUVORK5CYII=\n", "output_type": "display_data"}], "prompt_number": 26, "cell_type": "code", "language": "python", "metadata": {}, "input": ["clf;\n", "for i=1:4\n", " u = A{i}(M==1); u = u(u>0);\n", " subplot(4,1,i);\n", " hist(u, 40); axis('tight');\n", " title(titles{i});\n", "end"]}, {"source": ["Shape Retrieval using Geodesic Historams.\n", "-----------------------------------------\n", "One can use the histograms of Eccentricity for shape retrieval."], "metadata": {}, "cell_type": "markdown"}, {"source": ["__Exercise 4__\n", "\n", "Load a library of shapes. Compute the different histograms for these\n", "shapes."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 27, "cell_type": "code", "language": "python", "metadata": {}, "input": ["exo4()"]}, {"collapsed": false, "outputs": [], "prompt_number": 28, "cell_type": "code", "language": "python", "metadata": {}, "input": ["%% Insert your code here."]}, {"source": ["__Exercise 5__\n", "\n", "Perform the retrieval by comparing the histogram. Test diffetent metrics\n", "for the retrieval."], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "outputs": [], "prompt_number": 29, "cell_type": "code", "language": "python", "metadata": {}, "input": ["exo5()"]}, {"collapsed": false, "outputs": [], "prompt_number": 30, "cell_type": "code", "language": "python", "metadata": {}, "input": ["%% Insert your code here."]}], "metadata": {}}], "nbformat": 3, "metadata": {"kernelspec": {"name": "matlab_kernel", "language": "matlab", "display_name": "Matlab"}, "language_info": {"mimetype": "text/x-matlab", "name": "matlab", "file_extension": ".m", "help_links": [{"url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md", "text": "MetaKernel Magics"}]}}}