title: Error detection PCB fiducial detection from Image of Board
body: <p>Here I am trying to detect FIDUCIAL points on PCB in real time using camera, also I am using C#.net 4 win-form Application.</p>
  
  <p>After googling for Two days and reading many post and blog. I found that I have to do something called <strong><em>translational error detection</em></strong> and  <strong><em>rotational error detection.</em></strong></p>
  
  <p>ie. Location of fiducial (object) on Image for actual() vs required(Known location)</p>
  
  <p>In image below </p>
  
  <p>Black Square in bottom right and Top left the Fiducial point which I need to detect and use for error check.</p>
  
  <p>Here (A) is correct Image and (B) is image with error in location of fiducial point.</p>
  
  <p><img src="https://i.stack.imgur.com/bIeLm.png" alt="enter image description here"></p>
  
  <p>Now I have to draw line on image, with respect to fiducial point. So on image  A I can draw line (RED) as shown in below image (A).</p>
  
  <p>But if I draw Same line on image (B), which has error due to the way it has been placed I will draw the wrong line (RED) if I use the same value of X and Y.</p>
  
  <p>But here for Correct line on (B) I need to ADD ERROR value to my X and Y values so that I can draw correct line (GRREN) as shown in (B).</p>
  
  <p><img src="https://i.stack.imgur.com/r4cbB.png" alt="enter image description here"></p>
  
  <p>So here, I am trying to find out how can I archive this;</p>
  
  <p>1) Detect the TWO fiducial point, get their location on Image, compare it with the correct location.</p>
  
  <p>2) Find the ERROR (in Angle / in transaction/ in rotation) ?</p>
  
  <p>3) use the error value by adding it X and Y values.</p>
  
  <p>I also found that Aforge.net or OpenCV can be useful for this but I am not sure How ? There are other possible shapes for Fiducial are Triangle, Diamond and circle.</p>
  
  <p>Any help/Guide is appreciated ...!!!
  Thanks for your time.</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>I have the Offset values, for both fidicual points, (DX1,DY1) and (DX2,DY2) is values by which original point is moved.</p>
  
  <p>So, now how do I use it ? to correct the error in placement.
  Now How do I use it </p>