<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Hi Frederik,</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">what happens if you set number of histogram bins to 129 or 127?</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Regards,</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Dženan</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Oct 17, 2017 at 10:35 AM, hellman <span dir="ltr"><<a href="mailto:fredrik.hellman@gmail.com" target="_blank">fredrik.hellman@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
<br>
I am planning to use OtsuMultipleThresholdsImageFil<wbr>ter to segment an image<br>
into a number of classes. I started by testing it for a small image with<br>
only a single threshold to see that I understand how it works. The results<br>
surprise me though.<br>
<br>
I create a 1D-image with four pixels: 1000, 2000, 3000 and 4000. Computing a<br>
threshold to split this distribution into two classes of maximum<br>
between-class variance should give a threshold between 2000 and 3000.<br>
However, OtsuMultipleThresholdsImageFil<wbr>ter gives me a value 1996.17, which<br>
puts 1000 in one class and 2000, 3000, 4000 in the other class. This does<br>
not give the smallest between-class variance.<br>
<br>
The code that I tried can be found below. Do I misunderstand how this filter<br>
should work or is there a bug in its implementation?<br>
<br>
Running the following code with ITK 4.12.0 and ITK 4.12.2 prints 1996.17:<br>
<br>
#include <<wbr>itkOtsuMultipleThresholdsImage<wbr>Filter.h><br>
<br>
typedef itk::Image<float, 1> ImageType;<br>
typedef itk::Image<int, 1> LabelImageType;<br>
<br>
int main(int argc, char *argv[])<br>
{<br>
  typename ImageType::Pointer input = ImageType::New();<br>
<br>
  ImageType::RegionType region;<br>
  region.GetModifiableSize()[0] = 4;<br>
  input->SetRegions(region);<br>
  input->Allocate();<br>
<br>
  ImageType::IndexType index;<br>
  index[0] = 0;<br>
  input->SetPixel(index, 1000);<br>
  index[0] = 1;<br>
  input->SetPixel(index, 2000);<br>
  index[0] = 2;<br>
  input->SetPixel(index, 3000);<br>
  index[0] = 3;<br>
  input->SetPixel(index, 4000);<br>
<br>
  auto otsuFilter = itk::<wbr>OtsuMultipleThresholdsImageFil<wbr>ter<ImageType,<br>
LabelImageType>::New();<br>
  otsuFilter->SetInput(input);<br>
  otsuFilter-><wbr>SetNumberOfHistogramBins(128);<br>
  otsuFilter-><wbr>SetNumberOfThresholds(1);<br>
  otsuFilter->Update();<br>
<br>
  std::cout << otsuFilter->GetThresholds()[0] << std::endl;<br>
<br>
  return 0;<br>
}<br>
<br>
Best wishes,<br>
Fredrik Hellman<br>
<br>
<br>
<br>
--<br>
Sent from: <a href="http://itk-users.7.n7.nabble.com/" rel="noreferrer" target="_blank">http://itk-users.7.n7.nabble.<wbr>com/</a><br>
The ITK community is transitioning from this mailing list to <a href="http://discourse.itk.org" rel="noreferrer" target="_blank">discourse.itk.org</a>. Please join us there!<br>
______________________________<wbr>__<br>
Powered by <a href="http://www.kitware.com" rel="noreferrer" 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" rel="noreferrer" target="_blank">http://www.kitware.com/<wbr>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" rel="noreferrer" target="_blank">http://www.kitware.com/<wbr>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" rel="noreferrer" target="_blank">http://www.itk.org/Wiki/ITK_<wbr>FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://public.kitware.com/mailman/listinfo/insight-users" rel="noreferrer" target="_blank">http://public.kitware.com/<wbr>mailman/listinfo/insight-users</a><br>
</blockquote></div><br></div>