<font><font face="verdana,sans-serif">Current version of my fix is attached.</font></font><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Dec 11, 2012 at 4:53 PM, Dženan Zukić <span dir="ltr">&lt;<a href="mailto:dzenanz@gmail.com" target="_blank">dzenanz@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><font><font face="verdana,sans-serif">It looks like Jim Miller introduced invalid unit usage in fix </font></font><font face="verdana, sans-serif">15b9450b61249261d098506d9ff878744768025a from 2003-02-19.</font><div>

<font face="verdana, sans-serif"><br>
</font></div><div><font face="verdana, sans-serif"><a href="http://www.libpng.org/pub/png/book/chapter11.html#png.ch11.div.9" target="_blank">PNG spec</a> defines meters and radians as allowed units in sCAL chunk, vs unknown and meters in pHYs chunk. Hence the warning I have been seeing with OpenCV and NConvert.</font></div>

<div class="HOEnZb"><div class="h5">
<div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Dec 11, 2012 at 4:03 PM, Dženan Zukić <span dir="ltr">&lt;<a href="mailto:dzenanz@gmail.com" target="_blank">dzenanz@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<font><font face="verdana,sans-serif">Current behavior is to ignore units, but it does not handle unit completely correctly (only handles the extension sCAL for metadata, but not the standard pHYs metadata).</font></font><div>



<font><font face="verdana,sans-serif"><br></font></font></div><div><font><font face="verdana,sans-serif">Extending current way would transform 2000 pixels/meter (pixel size 0.5 mm) into spacing of 0.0005.</font></font></div>


<div><div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Dec 11, 2012 at 3:50 PM, Bradley Lowekamp <span dir="ltr">&lt;<a href="mailto:blowekamp@mail.nih.gov" target="_blank">blowekamp@mail.nih.gov</a>&gt;</span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><br></div><div>Having very small or very large spacing can have big impact on the numerical stability of derivatives and evolving differential equations such as level-sets or diffusion.</div>



<div><br></div><div>I think the least surprising thing to the users would be to just keep it the same as to avoid adverse numerical effects. Also this would not change the current behavior, correct?</div><div><br></div><div>



Brad</div><div><div><br><div><div>On Dec 11, 2012, at 9:42 AM, Dženan Zukić &lt;<a href="mailto:dzenanz@gmail.com" target="_blank">dzenanz@gmail.com</a>&gt; wrote:</div><br><blockquote type="cite"><font><font face="verdana,sans-serif">PNG has three following units: meters, radians, and unknown. Currently PNG reader ignores unit, and writes unknown units.</font></font><div>



<font><font face="verdana,sans-serif"><br></font></font></div>

<div><font face="verdana, sans-serif">I guess I Should keep writing unknown units. But when reading PNG with meter units (eg. 2000 pixels/meter), should I transform it into pixel spacing 0.5 (assuming customary millimeter) or into 0.0005?</font></div>





<div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Dec 11, 2012 at 3:36 PM, Bill Lorensen <span dir="ltr">&lt;<a href="mailto:bill.lorensen@gmail.com" target="_blank">bill.lorensen@gmail.com</a>&gt;</span> wrote:<br>





<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">No units. ITK considers units an application thing. You can add a unit<br>
type if the format supports it. It could help applications. For<br>
example, most medical images use mm&#39;s.<br>
<div><div><br>
On Tue, Dec 11, 2012 at 8:25 AM, Dženan Zukić &lt;<a href="mailto:dzenanz@gmail.com" target="_blank">dzenanz@gmail.com</a>&gt; wrote:<br>
&gt; Is ITK still assuming no units, or millimeters are units for pixel spacing?<br>
&gt;<br>
&gt;<br>
&gt; On Mon, Dec 10, 2012 at 5:25 PM, Bill Lorensen &lt;<a href="mailto:bill.lorensen@gmail.com" target="_blank">bill.lorensen@gmail.com</a>&gt;<br>
&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; If you submit a gerrit patch, I&#39;ll write or modify a test.<br>
&gt;&gt;<br>
&gt;&gt; How will we know if the fix works unless we test it? How will we know<br>
&gt;&gt; if someone reintroduces the bug if we don&#39;t test it?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Mon, Dec 10, 2012 at 10:41 AM, Dženan Zukić &lt;<a href="mailto:dzenanz@gmail.com" target="_blank">dzenanz@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; But this would be a bug fix, not a patch introducing new features. This<br>
&gt;&gt; &gt; should already be working, and ideally having a test.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; I know that many bugs don&#39;t get fixed, because they are not important<br>
&gt;&gt; &gt; enough<br>
&gt;&gt; &gt; and there is not enough people working on ITK. However a requirement to<br>
&gt;&gt; &gt; write a 20-30 line test for a few lines of fixed code is a great<br>
&gt;&gt; &gt; deterrence<br>
&gt;&gt; &gt; for me to contribute bug fixes (such as this one).<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Mon, Dec 10, 2012 at 4:26 PM, Bill Lorensen &lt;<a href="mailto:bill.lorensen@gmail.com" target="_blank">bill.lorensen@gmail.com</a>&gt;<br>
&gt;&gt; &gt; wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Looks like ti should be fixed. But if you submit a gerrit patch, make<br>
&gt;&gt; &gt;&gt; sure oyu also supply a test or modify an existing test.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; The lack of a test is why your previous gerrit patch has not been<br>
&gt;&gt; &gt;&gt; approved.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Bill<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; On Mon, Dec 10, 2012 at 8:35 AM, Dženan Zukić &lt;<a href="mailto:dzenanz@gmail.com" target="_blank">dzenanz@gmail.com</a>&gt;<br>
&gt;&gt; &gt;&gt; wrote:<br>
&gt;&gt; &gt;&gt; &gt; Hi everyone,<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; I have noticed that ImageFileWriter, when writing png format, writes<br>
&gt;&gt; &gt;&gt; &gt; wrong<br>
&gt;&gt; &gt;&gt; &gt; pixel size information. It is not completely wrong, but it is not in<br>
&gt;&gt; &gt;&gt; &gt; accordance with png specification.<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; When reading such files with OpenCV, I get following warning:<br>
&gt;&gt; &gt;&gt; &gt; libpng warning: Invalid sCAL ignored: invalid unit<br>
&gt;&gt; &gt;&gt; &gt; This is not just annoying and clutter-causing, but displaying it for<br>
&gt;&gt; &gt;&gt; &gt; every<br>
&gt;&gt; &gt;&gt; &gt; single image slows down my OpenCV processing.<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; I used XnView to batch-edit the extracted slices and set some scaling<br>
&gt;&gt; &gt;&gt; &gt; which<br>
&gt;&gt; &gt;&gt; &gt; adheres to the specification to get rid of this warning.<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Now the question: should I correct this bug, or submit a bug report?<br>
&gt;&gt; &gt;&gt; &gt; My<br>
&gt;&gt; &gt;&gt; &gt; last<br>
&gt;&gt; &gt;&gt; &gt; bug-fixing ended non-gloriously :(<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; _____________________________________<br>
&gt;&gt; &gt;&gt; &gt; Powered by <a href="http://www.kitware.com/" target="_blank">www.kitware.com</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Visit other Kitware open-source projects at<br>
&gt;&gt; &gt;&gt; &gt; <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Kitware offers ITK Training Courses, for more information visit:<br>
&gt;&gt; &gt;&gt; &gt; <a href="http://www.kitware.com/products/protraining.php" target="_blank">http://www.kitware.com/products/protraining.php</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Please keep messages on-topic and check the ITK FAQ at:<br>
&gt;&gt; &gt;&gt; &gt; <a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Follow this link to subscribe/unsubscribe:<br>
&gt;&gt; &gt;&gt; &gt; <a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; --<br>
&gt;&gt; &gt;&gt; Unpaid intern in BillsBasement at noware dot com<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt;&gt; Unpaid intern in BillsBasement at noware dot com<br>
&gt;<br>
&gt;<br>
<br>
<br>
<br>
--<br>
Unpaid intern in BillsBasement at noware dot com<br>
</div></div></blockquote></div><br></div>
_____________________________________<br>Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br><br>Visit other Kitware open-source projects at<br><a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>



<br>Kitware offers ITK Training Courses, for more information visit:<br><a href="http://www.kitware.com/products/protraining.php" target="_blank">http://www.kitware.com/products/protraining.php</a><br><br>Please keep messages on-topic and check the ITK FAQ at:<br>



<a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br><br>Follow this link to subscribe/unsubscribe:<br><a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>



</blockquote></div><br></div></div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div>