<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:10pt"><div><span>Hi David,</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;"><span><br></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;"><span>I couldn't find any method to input customized array in vtkImageHistogram. I'm trying to plot image projection profile. I guess I can only use vtkChartXY.</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style:
 normal;"><span>Thanks for the reply.</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;"><span><br></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;"><span>Regards,</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;"><span>Harold</span></div><div class="yahoo_quoted" style="display: block;"> <br> <br> <div style="font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 10pt;"> <div style="font-family: HelveticaNeue, 'Helvetica Neue', Helvetica,
 Arial, 'Lucida Grande', sans-serif; font-size: 12pt;"> <div dir="ltr"> <font size="2" face="Arial"> On Wednesday, January 8, 2014 1:24 PM, David Gobbi &lt;david.gobbi@gmail.com&gt; wrote:<br> </font> </div>  <div class="y_msg_container">Hi Harold,<br clear="none"><br clear="none">The vtkImageAccumulate filter doesn't draw a histogram, it computes<br clear="none">a histogram.&nbsp; The input of vtkImageAccumulate is an image, not an<br clear="none">array.<br clear="none"><br clear="none">It might be easier to use vtkImageHistogram.&nbsp; It takes an image as<br clear="none">input, and produces a histogram image as output.<br clear="none"><br clear="none">&nbsp; David<br clear="none"><br clear="none"><div class="yqt2410058659" id="yqtfd15292"><br clear="none">On Tue, Jan 7, 2014 at 9:12 PM, Harold &lt;<a shape="rect" ymailto="mailto:boogiedoll@yahoo.com" href="mailto:boogiedoll@yahoo.com">boogiedoll@yahoo.com</a>&gt; wrote:<br clear="none">&gt; Hi,<br
 clear="none">&gt;<br clear="none">&gt; I have a grayscale image. I want to draw a histogram where x-axis is the nth<br clear="none">&gt; column (n = image_width -1), and y-axis is the sum of pixel value in each<br clear="none">&gt; column. How do I pass the y-axis value (std::vector&lt;int&gt; ColSum; ) to the<br clear="none">&gt; vtkImageAccumulate?<br clear="none">&gt;<br clear="none">&gt; // Read a jpeg image<br clear="none">&gt;&nbsp;  vtkSmartPointer&lt;vtkJPEGReader&gt; reader =<br clear="none">&gt;&nbsp; &nbsp;  vtkSmartPointer&lt;vtkJPEGReader&gt;::New();<br clear="none">&gt;&nbsp;  reader-&gt;SetFileName( argv[1] );<br clear="none">&gt;&nbsp;  reader-&gt;Update();<br clear="none">&gt;<br clear="none">&gt; // Convert image to image data<br clear="none">&gt;&nbsp;  vtkSmartPointer&lt;vtkImageData&gt; imageData =<br clear="none">&gt; vtkSmartPointer&lt;vtkImageData&gt;::New();<br clear="none">&gt;&nbsp;  imageData = reader-&gt;GetOutput();<br
 clear="none">&gt;<br clear="none">&gt; // Compute the sum for each image column<br clear="none">&gt;&nbsp;  std::vector&lt;int&gt; ColSum;<br clear="none">&gt;&nbsp;  int image_width =&nbsp; imageData-&gt;GetDimensions()[0];<br clear="none">&gt;&nbsp;  ColSum.resize(width);<br clear="none">&gt;<br clear="none">&gt;&nbsp;  for(int i = 0; i &lt; image_width; ++i)<br clear="none">&gt;&nbsp;  {<br clear="none">&gt;&nbsp; ColSum[i] = 0;<br clear="none">&gt;&nbsp; for(int j = 0; j &lt; height; ++j)<br clear="none">&gt;&nbsp; {<br clear="none">&gt;&nbsp; ColSum[i] += imageData-&gt;GetScalarComponentAsDouble(i,j, 0, 0);<br clear="none">&gt;&nbsp; }<br clear="none">&gt;&nbsp;  }<br clear="none">&gt;<br clear="none">&gt; // Draw histogram<br clear="none">&gt;&nbsp;  vtkSmartPointer&lt;vtkImageAccumulate&gt; histogram =<br clear="none">&gt;&nbsp; &nbsp;  vtkSmartPointer&lt;vtkImageAccumulate&gt;::New();<br clear="none">&gt;&nbsp;  // ??? How to convert&nbsp;
 "ColSum" to vtkImageAccumulate&nbsp; here?<br clear="none">&gt;<br clear="none">&gt;&nbsp;  ...<br clear="none">&gt;<br clear="none">&gt;<br clear="none">&gt; Regards,<br clear="none">&gt; Harold<br clear="none"></div><br><br></div>  </div> </div>  </div> </div></body></html>