<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/168669</link>
    <title>MATLAB Central Newsreader - Angle between Pixels of an image</title>
    <description>Feed for thread: Angle between Pixels of an image</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>Sat, 03 May 2008 16:07:03 -0400</pubDate>
      <title>Angle between Pixels of an image</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/168669#430081</link>
      <author>zaheer ahmad</author>
      <description>&lt;br&gt;
I am working on Cursive ( Urdu/Arabic )Optical character&lt;br&gt;
Recognition (OCR )System. i need to find out the flow of&lt;br&gt;
pixels or angle between pixels (i.e. angle between pixel1&lt;br&gt;
and pixel5)&lt;br&gt;
is it possible using any existing filters in matlab. if yes&lt;br&gt;
which filter and where to find help regarding the filter.&lt;br&gt;
the image is of binary type.&lt;br&gt;
Presently i am scanning the image for black pixels, storing&lt;br&gt;
the pixels location then using ' atan2 ' find the angle.&lt;br&gt;
the complete code is as below:&lt;br&gt;
&lt;br&gt;
clear&lt;br&gt;
clc&lt;br&gt;
Img=im2bw(imread('SingleWord.bmp'));&lt;br&gt;
imshow(Img);hold on; axis manual;&lt;br&gt;
[Ymax, Xmax] = size(Img);&lt;br&gt;
&lt;br&gt;
points=[22,22];&lt;br&gt;
xx=0;yy=0;&lt;br&gt;
for y=Ymax:-1:1&lt;br&gt;
for x=Xmax:-1:1&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if Img(y,x)==0&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;plot(x,y,'Color','r','LineWidth', 0.5,'Marker','.');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xx=xx+1;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;yy=yy+1;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;points(xx,yy)=x;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;points(xx+1,yy)=y;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;break;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br&gt;
end&lt;br&gt;
end&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
for i=1:25&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for j=1:25&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br&gt;
PA=atan2((points(i,j+1)-points(i+1,j+1)),((points(i,j+1)-points(i,j))))&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br&gt;
end&lt;br&gt;
&lt;br&gt;
It gives me a list of angles as expected but with errors.&lt;br&gt;
the code is given here for explaining my aim and  to make it&lt;br&gt;
sure you follow me.&lt;br&gt;
thanks in advance.</description>
    </item>
  </channel>
</rss>

