How to keep the first edge coordinate as reference?

Hi..
My program is to detect movement of an object using a webcam and Labview 8.5.1.
I used an IMAQ RAKE with 'top to bottom' scan direction to find the first edge of my object and I want to keep the coordinate of this first edge (X1,Y1). Then when the object moves, the IMAQ RAKE will find the first edge with same scan direction and the coordinates (Xi,Yi) are needed to calculate the distance of the movement (X1-Xi,Y1-Yi). And this calculation is running in real-time.
My problem is, when the IMAQ RAKE detect the very first edge (X1,Y1), how can I store this as a reference coordinate that I'm going to use in the calculation? Because in my current program, the coordinate will follow the current first edge detection, thus the distance will always be 0.
Many thanks.
Message Edited by Amila on 02-25-2009 05:43 PM

Hi Amila,
I assume that you are using the output of the function 'first edges'.  Depending on your architecture there are different ways to go about doing this.  From your problem I assume that you are usign a loop with the function on the inside meaning that on the second itteration the result of the first is being overwritten.  My suggestion would be to use a shift register so that the result from the first itteration can be fed back around into the second.
If you need any help in implementing this please don't hesitate to ask.
Regards,
Thomas Clark
Applications Engineer
National Instruments UK & Ireland

Similar Messages

  • How to keep the first row fixed in a JTable, with sorting, and bellow the headers ?

    I am trying to change the following code so then the fixed rows will stay on top(but below the headers!), but when I change getContentPane().add(fixedScroll, BorderLayout.SOUTH); to getContentPane().add(fixedScroll, BorderLayout.NORTH); it stays above the headers. How can I put the first rows on top, but below the headers ? Thanks.
    import java.awt.*; 
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.table.*;
    import javax.swing.event.*;
    * @version 1.0 03/05/99
    public class FixedRowExample extends JFrame {
      Object[][] data;
      Object[] column;
      JTable fixedTable,table;
      private int FIXED_NUM = 2;
      public FixedRowExample() {
        super( "Fixed Row Example" );
        data =  new Object[][]{
            {      "a","","","","",""},
            {      "","b","","","",""},
            {      "","","c","","",""},
            {      "","","","d","",""},
            {      "","","","","e",""},
            {      "","","","","","f"},
            {"fixed1","","","","","","",""},
            {"fixed2","","","","","","",""}};
        column = new Object[]{"A","B","C","D","E","F"};
        AbstractTableModel    model = new AbstractTableModel() {
          public int getColumnCount() { return column.length; }
          public int getRowCount() { return data.length - FIXED_NUM; }
          public String getColumnName(int col) {
           return (String)column[col];
          public Object getValueAt(int row, int col) {
            return data[row][col];
          public void setValueAt(Object obj, int row, int col) {
            data[row][col] = obj;
          public boolean CellEditable(int row, int col) {
            return true;
        AbstractTableModel fixedModel = new AbstractTableModel() {     
          public int getColumnCount() { return column.length; }
          public int getRowCount() { return FIXED_NUM; }
          public Object getValueAt(int row, int col) {
            return data[row + (data.length - FIXED_NUM)][col];
        table = new JTable( model );
        table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        table.setAutoCreateRowSorter(true);
        fixedTable = new JTable( fixedModel );
        fixedTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        fixedTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        JScrollPane scroll      = new JScrollPane( table );
        scroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
        JScrollPane fixedScroll = new JScrollPane( fixedTable ) {
          public void setColumnHeaderView(Component view) {} // work around
                                                 // fixedScroll.setColumnHeader(null);
        fixedScroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
        JScrollBar bar = fixedScroll.getVerticalScrollBar();
        JScrollBar dummyBar = new JScrollBar() {
          public void paint(Graphics g) {}
        dummyBar.setPreferredSize(bar.getPreferredSize());
        fixedScroll.setVerticalScrollBar(dummyBar);
        final JScrollBar bar1 = scroll.getHorizontalScrollBar();
        JScrollBar bar2 = fixedScroll.getHorizontalScrollBar();
        bar2.addAdjustmentListener(new AdjustmentListener() {
          public void adjustmentValueChanged(AdjustmentEvent e) {
            bar1.setValue(e.getValue());
        scroll.setPreferredSize(new Dimension(400, 100));
        fixedScroll.setPreferredSize(new Dimension(400, 52));  // Hmm...
        getContentPane().add(     scroll, BorderLayout.CENTER);
        getContentPane().add(fixedScroll, BorderLayout.SOUTH);   
      public static void main(String[] args) {
        FixedRowExample frame = new FixedRowExample();
        frame.addWindowListener( new WindowAdapter() {
          public void windowClosing( WindowEvent e ) {
            System.exit(0);
        frame.pack();
        frame.setVisible(true);

    Sorry, this code missed a very important line:
    table.setAutoCreateRowSorter(true);
    So you meant:
    Object[][] header;//class atribute
    header=new Object[][]{//in the constructor
                { "h","i","j","k","l","m"},
                { "h","i","j","k","l","m"}
    public Object getValueAt(int row, int col) {//in the TableModel
            if (row==0){
                return header[row][col];
            else {
                return data[row][col];
    I tried, but when I sort, the first row get sorted with the rest.

  • I created a new collection and put all of my same photos in them as a previous collection, then I changed them to black and white and both collections changed. How do I keep the first collection colour and make the second collection black and white.

    I created a new collection and put all of my same photos in them as a previous collection, then I changed them to black and white and both collections changed. How do I keep the first collection colour and make the second collection black and white.

    For the second collection, choose the option to make virtual copies. Then you can turn the virtual copies to black & white, leaving the first collection in color. If you want file copies of the B & W images you can export copies.

  • HT204053 how do I change my recently chosen icloud email address to a different one or add on a 2nd one, keeping the first?

    how do I change my recently chosen icloud email address to a different one or add on a 2nd one, keeping the first?

    If you are wishing to change your @me address, this cannot be done, however if you wish to change another address;
    You need to change your details with Apple,  Start here, change your country if necessary and go to manage your account.

  • The popup window won't open at a normal size. Any ideas on how to keep the popup window a normal size when opening?

    I recently did the latest update for my MacBook Air and when I use a specific website it won't open the popup blocker at a normal size. Any ideas on how to keep the popup blocker at the size that I select?

    This is a user to user forum and Adobe Staff does drop by.
    First thing to try is Reset the Type Tool by right-clicking on its' icon in the Options bar.
    If you still have problems, it could be related to fonts. Here is a step by step troubleshooting help doc for that.
    Troubleshoot fonts | Photoshop CC 2014, CC, CS6, CS5
    And basic troubleshooting: Photoshop: Basic Troubleshooting steps to fix most issues
    Gene

  • Does Anybody know how to keep the license files and Certificates in ISE-3315 During the upgrade.

    Hi,
    I have two ISE-3315 Appliances in production network.
    I need someone's help to explain, how to make the Secondary node as the primary admin note to reset-config.
    And then I would like to know how to keep the license files and Certificate during the Upgrade.
    Please help me to answer my questions.
    Thanks
    CSCO11872447

    The Cisco Identity Services Engine (ISE) provides distributed  deployment of runtime services with centralized configuration and  management. Multiple nodes can be deployed together in a distributed  fashion to support failover.
    If you register a  secondary Monitoring ISE node, it is recommended that you first back up  the primary Monitoring ISE node and then restore the data to the new  secondary Monitoring ISE node. This ensures that the history of the  primary Monitoring ISE node is in sync with the new secondary node as  new changes are replicated.
    Please  Check the below configuration guide for Secondary ISE- Nodes.
    http://www.cisco.com/en/US/docs/security/ise/1.0/user_guide/ise10_dis_deploy.pdf

  • How to keep the whole page open during browsing

    I am trying to work out how to keep the whole page open in Safari i.e. the top most line with the Apple logo, file, edit, view etc. whilst browsing.  What is the setting to achieve this ?  Since installing Yosemite my MBP 2011 with SSD is behaving oddly at times. Where is the "back" when in Support Communities or is going into the history tab the only way ?
    thanks

    When in the ASC pages, my method involves opening separate windows.
    So I can go back to the reference page from where I first visited a thread.
    Also, pages open faster at times into a new window instead of a tab. As
    my setup has a bit more display than necessary, a few extra windows are
    easier than a bunch of tabs in one frame that have no point of reference.
    Plus, if I wish to copy/paste or drag into another window, or access extra
    content for the sake of reference, I have that; & may use another browser.
    For some content, different browsers may be a preference. I'm used to more
    than two, and one of three becomes more dedicated to things like web mail.
    There may be some options in launchpad items, such as they are.
    Mission Control can access other hidden windows. There's a short
    cut for Full Screen that when used again, reverts to previous size.
    Not sure if this gets near your question, but thought I'd put it out here anyway.
    edited

  • How to keep the watch to display without press the button on my iPod Nano 6th)?

    Dear Guys,
    I have purchased a watchband for my ipod nano 6th recently, overall is okay but i don't know how to keep the watch to display without pressing the sleep/resume button on edge? Also, the screen is not showing the watch immeditaly when I press the button, it shows the music/cd folder, then I need to scroll the screen back to the watch display.  Please help.

    There is no way to keep the display on permanently, as doing so would significantly reduce the overall life of the battery.  It would maybe last only hour, maybe not even.
    As for having your iPod wake up to the watch view, head to Settings -> General -> Time on Wake -> On.
    B-rock

  • How to keep the WBS & Order in account assignment tab of SD contract item?

    Hi Experts,
    If I remove the plant from the shipping tab in the contract item (the contract type is WV), I will be able to enter the WBS or Order in accounting assignment tab. However, if I enter the plant (in order to determine the tax in pricing), the WBS and Order are disappered and there is one new settlement rule button showed up.
    Do you know any configuration could keep the WBS and order in the accounting assigment tab even the plant is there.
    Thanks in advance!
    Norman

    Hi Chandra,
    Thanks for your answer. However, I even added the plant in the WBS, the tax (we use tax jurisdiction) still could not be determined.
    The problem is that SAP changes the account assignment tab screen (it suppresses the WBS and Order fields, but addes settlement rule) with the plant in the shipping tab. Do you know how to keep the same account assignment tab screen with the plant in the shipping tab?
    Thanks,
    Norman

  • How to Capitalize the first letter or an entire word using a shortcut on the keyboard just like in microsoft that uses shift+F3

    please how can one How to Capitalize the first letter or an entire word using a shortcut on the keyboard just like in microsoft that uses shift+F3

    What do you mean there was "no effect?" I'm not aware of any effects.
    It looks like that Service is also in the App Store. From their screen shots, the services are prefaced with WordService:
    You can see an example in the App Store for their app: App Store
    After installing, you should now have those text services in your Services menu. You can then add shortcuts in the Keyboard System Prefs.
    Most Apple apps have a Transformations menu in the Edit menu. You can Make upper, lower, and Initial caps with those. I would stick with Word Services, but you can make Application Shortcuts for the items in the Transformations menu.
    Again, in Keyboard System Prefs, Under Applications, Click the Add button on the right side pane.
    Set it for All Applications
    Enter the menu command exactly as they appear in the Transformation menu (separate entries for each),
    Make Upper Case
    Make Lower Case
    Capitalize
    Give them a shortcut.

  • How to get the first day in the month from a domain date ?

    Hi,
    I like to know how to get the first day in the month from a domain date?
    Thanks
    Stephen

    Hi Gokul...
    Instead of using the funtion module you can just write the 3 statements of code to get the first day of the week.
    Its similar to the above one but instead of writing case statement you can achive the following.
    data : w_res type i,
             w_data type d,
    w_res = w_date mod 7.
    w_date = w_date - w_res.
    write w_date.
    This works.
    Regards,
    Siddarth

  • How  to  get the FIRST DAY OF THE CURRENT MONTH

    how to get the FIRST DAY OF THE CURRENT MONTH in oracle 9i.
    plzzzzz send immedaily.advance thanks

    TEST@test SQL> select trunc(sysdate,'MON') from dual;
    TRUNC(SYS
    01-OCT-06
    TEST@test SQL>                                  

  • Apple Mail - how to get the first word in a sentence to auto-capitalize

    How to get the first word in a sentence to auto-capitalize
    Anwar

    something to look forward to then, because we get used not to use our shift button any more, since iPhone and iPad do it for us. entourage and other ms stuff do it. pages does it too now (put it on in the auto-correct in preferences). bizarre however some loose the capitalization when you copy the text. pages to stickies or mail does not. that's good !

  • How to get the first 4 chars form a var ?

    Hi guys,
    How to get the first 4 chars form a var ?
    i.e  temp type num20 value '00000000000012345678'.
    how to move the first 4 chars to another var?
    thx in advance.

    hi
    use OFFESTS..
    example:
    var1 = '12345678'.
    var2 = var1+0(4).
    now var2 conatins '1234'.
    thx
    pavan

  • How to keep the data entered on a page apex

    how to keep the data entered on a page apex
    so, I've got a registration page then wish go to another page P2 and I return to this P1 without losing data

    Hi,
    As long as the registration page is within the same session, the values will remain in the session until they are specifically cleared out. This can be done by a process on a page - so check if you have a "reset page" process on P1 and, if you do, delete it. This can also be done on a branch - so check the branch that takes you to P2 and see if there is anything entered in the Clear Cache setting and, if it shows *1*, remove that. There are other ways as well, but these are most typical.
    Andy

Maybe you are looking for