<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/245765</link>
    <title>MATLAB Central Newsreader - vectorization - speed up</title>
    <description>Feed for thread: vectorization - speed up</description>
    <language>en-us</language>
    <copyright>&amp;copy;1994-2012 by MathWorks, Inc.</copyright>
    <webmaster>webmaster@mathworks.com</webmaster>
    <generator>MATLAB Central Newsreader</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>60</ttl>
    <image>
      <title>MathWorks</title>
      <url>http://www.mathworks.com/images/membrane_icon.gif</url>
    </image>
    <item>
      <pubDate>Tue, 03 Mar 2009 09:55:04 -0500</pubDate>
      <title>vectorization - speed up</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/245765#632079</link>
      <author>francesco santi</author>
      <description>Hello.&lt;br&gt;
I need to speed up this function.&lt;br&gt;
It is executed many times in my algorithm and it runs on big matrix.&lt;br&gt;
I have used the profiler and it is the most called and the most time consuming function.&lt;br&gt;
Any help would be appreciated.&lt;br&gt;
&lt;br&gt;
function Singleton = singleton(classes, Parameters, ImageMatrix)&lt;br&gt;
global HSV_rows HSV_cols&lt;br&gt;
&lt;br&gt;
Singleton = cell(1,classes);&lt;br&gt;
for l=1:classes&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;temp = zeros(HSV_rows, HSV_cols);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;detSl = Parameters(l).DetermS;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;temp2 = -log(1/(sqrt(power(2*pi,3)*detSl)));&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Ml = Parameters(l).Med;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;invSl = Parameters(l).InverS;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for r=1:HSV_rows&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for c=1:HSV_cols&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fl = double(cell2mat(ImageMatrix(r,c)));&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;temp(r,c) = (fl - Ml) * invSl * (fl - Ml)';&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Singleton{l} = real(temp2+temp*.5);&lt;br&gt;
end&lt;br&gt;
&lt;br&gt;
Thank you very much in advance for any kind of help,&lt;br&gt;
Francesco</description>
    </item>
    <item>
      <pubDate>Tue, 03 Mar 2009 10:10:17 -0500</pubDate>
      <title>Re: vectorization - speed up</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/245765#632085</link>
      <author>us</author>
      <description>&quot;francesco santi&quot;&lt;br&gt;
&amp;gt; fl = double(cell2mat(ImageMatrix(r,c)));&lt;br&gt;
&lt;br&gt;
this syntax lets CSSMers assume that ImageMatrix itself contains r x c CELLS...&lt;br&gt;
if this is correct&lt;br&gt;
- what is the size of each CELL...&lt;br&gt;
- are they of equal sizes...&lt;br&gt;
&lt;br&gt;
us</description>
    </item>
  </channel>
</rss>

