<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Lookup tables for binary image processing&#8212;makelut and applylut</title>
	<atom:link href="http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/</link>
	<description>Steve Eddins manages the Image &#38; Geospatial development team at The MathWorks and coauthored Digital Image Processing Using MATLAB. He writes here about image processing concepts, algorithm implementations, and MATLAB.</description>
	<lastBuildDate>Sat, 11 Feb 2012 18:27:50 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Steve</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-24601</link>
		<dc:creator>Steve</dc:creator>
		<pubDate>Mon, 07 Nov 2011 01:06:36 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-24601</guid>
		<description>Tiago&#8212;A single 3-by-3 table operation isn&#039;t enough to identify branch points, if that&#039;s what you mean. But you can use the &#039;branchpoints&#039; and &#039;endpoints&#039; options of the bwmorph function.</description>
		<content:encoded><![CDATA[<p>Tiago&mdash;A single 3-by-3 table operation isn&#8217;t enough to identify branch points, if that&#8217;s what you mean. But you can use the &#8216;branchpoints&#8217; and &#8216;endpoints&#8217; options of the bwmorph function.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tiago</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-24592</link>
		<dc:creator>Tiago</dc:creator>
		<pubDate>Thu, 03 Nov 2011 01:09:29 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-24592</guid>
		<description>Hello, I am not able to create a table to find ridge bifurcations and ridge ending. what would be the best table for this problem?</description>
		<content:encoded><![CDATA[<p>Hello, I am not able to create a table to find ridge bifurcations and ridge ending. what would be the best table for this problem?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: OJ</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-23592</link>
		<dc:creator>OJ</dc:creator>
		<pubDate>Sat, 09 Oct 2010 05:40:40 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-23592</guid>
		<description>Steve, It worked like a charm. Thankyou.</description>
		<content:encoded><![CDATA[<p>Steve, It worked like a charm. Thankyou.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-23587</link>
		<dc:creator>Steve</dc:creator>
		<pubDate>Fri, 08 Oct 2010 11:59:07 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-23587</guid>
		<description>OJ&#8212;Are you displaying the image at full magnification? When you display an image in a figure that&#039;s too small to display all the pixels in the image, some pixels have to be discarded in the display, and that result in appearance of missing pixels. Trying using imtool and set the view magnification to 100%.</description>
		<content:encoded><![CDATA[<p>OJ&mdash;Are you displaying the image at full magnification? When you display an image in a figure that&#8217;s too small to display all the pixels in the image, some pixels have to be discarded in the display, and that result in appearance of missing pixels. Trying using imtool and set the view magnification to 100%.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: OJ</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-23585</link>
		<dc:creator>OJ</dc:creator>
		<pubDate>Fri, 08 Oct 2010 09:24:07 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-23585</guid>
		<description>Hello Steve. I am new to Matlab Image Processing.

I am trying to thin image of a hand using &#039;thin&#039;. Apparently, bwmorph thinning produces image in which the pixels are missing at places. Somewhat like broken lines where they supposed to be continous.</description>
		<content:encoded><![CDATA[<p>Hello Steve. I am new to Matlab Image Processing.</p>
<p>I am trying to thin image of a hand using &#8216;thin&#8217;. Apparently, bwmorph thinning produces image in which the pixels are missing at places. Somewhat like broken lines where they supposed to be continous.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-20802</link>
		<dc:creator>Steve</dc:creator>
		<pubDate>Mon, 16 Jun 2008 13:40:18 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-20802</guid>
		<description>Pete&#8212;I don&#039;t think the lookup table optimization made in R2007b would make any difference for the operations you describe.</description>
		<content:encoded><![CDATA[<p>Pete&mdash;I don&#8217;t think the lookup table optimization made in R2007b would make any difference for the operations you describe.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pete</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-20796</link>
		<dc:creator>Pete</dc:creator>
		<pubDate>Mon, 16 Jun 2008 01:10:10 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-20796</guid>
		<description>Interesting.  I haven&#039;t made much use of lookup tables.  Although rather more limited, where possible I convert binary images to uint8 and use imfilter to add up the number of pixels in the neighborhood.

Therefore, for example, to compute end-points in a thinned/skeletonised binary image (bw) I have used,

bwEnds = imfilter(uint8(bw), ones(3)) == 2 &amp; bw;

Crossover points might be,

bwCrossover = imfilter(uint8(bw), ones(3)) &gt; 3) &amp; bw;

My decidedly untrustworthy memory had told me that I compared both methods once upon a time and found imfilter to be faster, but when I tried them tonight (to locate end points in 768x768 pixel binary images) they each took almost exactly the same length of time (around 0.06 s).  I wish to believe this is due to the R2007b optimisations rather than that I was mistaken, although I can&#039;t be sure.</description>
		<content:encoded><![CDATA[<p>Interesting.  I haven&#8217;t made much use of lookup tables.  Although rather more limited, where possible I convert binary images to uint8 and use imfilter to add up the number of pixels in the neighborhood.</p>
<p>Therefore, for example, to compute end-points in a thinned/skeletonised binary image (bw) I have used,</p>
<p>bwEnds = imfilter(uint8(bw), ones(3)) == 2 &amp; bw;</p>
<p>Crossover points might be,</p>
<p>bwCrossover = imfilter(uint8(bw), ones(3)) &gt; 3) &amp; bw;</p>
<p>My decidedly untrustworthy memory had told me that I compared both methods once upon a time and found imfilter to be faster, but when I tried them tonight (to locate end points in 768&#215;768 pixel binary images) they each took almost exactly the same length of time (around 0.06 s).  I wish to believe this is due to the R2007b optimisations rather than that I was mistaken, although I can&#8217;t be sure.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-20769</link>
		<dc:creator>Steve</dc:creator>
		<pubDate>Tue, 03 Jun 2008 20:32:03 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-20769</guid>
		<description>Mark&#8212;The lut method would probably be faster than what you are currently doing to detect end points.  If a crossing configuration can be determined using only a 3-by-3 neighborhood, then that also could be done using &lt;tt&gt;applylut&lt;/tt&gt;.  Your suggestion about about adding these options to &lt;tt&gt;bwmorph&lt;/tt&gt; is a good one; I&#039;ll follow up with you by e-mail about that.</description>
		<content:encoded><![CDATA[<p>Mark&mdash;The lut method would probably be faster than what you are currently doing to detect end points.  If a crossing configuration can be determined using only a 3-by-3 neighborhood, then that also could be done using <tt>applylut</tt>.  Your suggestion about about adding these options to <tt>bwmorph</tt> is a good one; I&#8217;ll follow up with you by e-mail about that.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Hayworth</title>
		<link>http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-20768</link>
		<dc:creator>Mark Hayworth</dc:creator>
		<pubDate>Tue, 03 Jun 2008 17:36:02 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/steve/2008/05/13/lookup-tables-makelut-applylut/#comment-20768</guid>
		<description>Steve, it looks like this could be used to do two operations that are missing from bwmorph, and they are to identify crossings (triple and quad branch points) and (like you said) end points.  Right now I&#039;m getting end points by computing the spur and subtracting it from the original (is the lut method better than that method?).  I have no way of computing crossings of skeleton lines where the shape is a &quot;Y&quot; or a &quot;+&quot; so maybe this could be used for that purpose.  Even better would be to add these in to bwmorph as options - any chance of that?</description>
		<content:encoded><![CDATA[<p>Steve, it looks like this could be used to do two operations that are missing from bwmorph, and they are to identify crossings (triple and quad branch points) and (like you said) end points.  Right now I&#8217;m getting end points by computing the spur and subtracting it from the original (is the lut method better than that method?).  I have no way of computing crossings of skeleton lines where the shape is a &#8220;Y&#8221; or a &#8220;+&#8221; so maybe this could be used for that purpose.  Even better would be to add these in to bwmorph as options &#8211; any chance of that?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

