<br><br><div><span class="gmail_quote">On 9/2/05, <b class="gmail_sendername">Joshua Cates</b> &lt;<a href="mailto:cates@sci.utah.edu">cates@sci.utah.edu</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Franz,<br><br>There are, in fact, no such methods as GenerateScalarCoefficients() and<br>ScalarFill().&nbsp;&nbsp;The documentation is in error.&nbsp;&nbsp;You should implement the methods<br>GenerateCoefficients() and Fill() instead.<br>
<br>There is no requirement that the neighborhood operator be directional.<br>GenerateCoefficients() takes no input and returns a vector of the coefficients<br>used in your operator.&nbsp;&nbsp;Fill() takes that vector of coefficients as the argument
<br>and positions them spatially in the operator (which is, itself, a neighborhood<br>data structure).<br><br>For example, if you simply wanted to sum all of the values in a neighborhood,<br>your GenerateCoefficients() method would return the vector
<br>{1,1,1,1, ..., 1}.&nbsp;&nbsp;The Fill() method would simply copy those values into the<br>operator.<br><br>Hope this helps,<br><br>Josh.<br><br>l franz wrote:<br>&gt; Hi everybody,<br>&gt;<br>&gt; I want to create a neighborhood operator which inherits of
<br>&gt; &quot;NeighborhoodOperator&quot; class. My operator will weight each pixels of a<br>&gt; NDimensional neighborhood through a kind of inner product (the output of<br>&gt; this inner product will be a neighborhood with weighted pixels). So my
<br>&gt; operator performs on all the neighborhood (and not in a particular<br>&gt; direction) and its size is equal to the neighborhood size.<br>&gt;<br>&gt; So, my operator is not directional. In this case and if I understand
<br>&gt; well the documentation, I have to implement two methods:<br>&gt; 1. GenerateScalarCoefficients<br>&gt; 2. ScalarFill<br>&gt;<br>&gt; So, I don't need to implement the &quot;GenerateCoefficients&quot; and &quot;Fill&quot;
<br>&gt; methods (for directional operators) like in GaussianOperator or in<br>&gt; DerivativeOperator.<br>&gt;<br>&gt; But, I don't know how to create the &quot;GenerateScalarCoefficients&quot; and<br>&gt; &quot;ScalarFill&quot; methods. What do they have in input arguments? What do they
<br>&gt; return? Do they have to call a particular method inherited from<br>&gt; NeighborhoodOperator??<br>&gt;<br>&gt; I think that &quot;GenerateScalarCoefficient&quot; method is similar to<br>&gt; &quot;GenerateCoefficients&quot; method. It takes no input argument and return a
<br>&gt; &quot;CoefficientVector&quot; with the desired coefficients.<br>&gt; But I have no ideas of how to implement the &quot;ScalarFill&quot; method.<br>&gt;<br>&gt; Does someone know about it? Or does anybody know where I can find an
<br>&gt; exemple of an non-directional neighborhood operator??<br>&gt;<br>&gt; Thanks,<br>&gt; Cheers,<br>&gt;<br>&gt; Franz<br>&gt;<br>&gt;<br>&gt; ------------------------------------------------------------------------
<br>&gt;<br>&gt; _______________________________________________<br>&gt; Insight-users mailing list<br>&gt; <a href="mailto:Insight-users@itk.org">Insight-users@itk.org</a><br>&gt; <a href="http://www.itk.org/mailman/listinfo/insight-users">
http://www.itk.org/mailman/listinfo/insight-users</a><br><br>--<br>Josh Cates<br>SCI Institute / School of Computing<br>University of Utah<br>801-595-9165<br>http:/www.sci.utah.edu/~cates</blockquote><div><br>
<br>
Thanks for your help Josh. That light me a lot.<br>

<br>

But I still have a little question. I have implemented a
&quot;GenerateCoefficients()&quot; and Fill()&quot; methods. If I take in exemple the
way a directional operator (Gaussian or Derivative Operator) is used,
the coefficients are computed when the &quot;CreateDirectional()&quot; method is
called. This last method is inherited form the &quot;NeighborhoodOperator&quot;
class.<br>

<br>

In fact, the &quot;CreateDirectional()&quot; method will call the
&quot;GenerateCoefficients()&quot; and &quot;Fill()&quot; method that have been
implemented. But this &quot;CreateDirectional()&quot; method needs the
&quot;m_Direction&quot; variable (see NeighborhoodOperator.txx line 64). This
last variable can be set by the &quot;SetDirection(unsigned int)&quot; method.<br>

<br>

In my case, I don't have a directional operator. So it's not representative to set a direction.<br>

<br>

So, have I the obligation to use the &quot;CreateDirectional()&quot; method to
generate the coefficients? Or perhaps another method (perhaps
&quot;CreateToRadius&quot; method).<br>

<br>

And if I have to use the &quot;CreateDirectional()&quot; method, what would the
direction to set? Can I simply &quot;forget&quot; to set the direction? (I think
no...)<br>

<br>

Thanks for your help,<br>

<br>

Cheers,<br>

<br>

Franz&nbsp;</div><br></div><br>