Stereo library pointers 2012

Dear programmers,

I am evaluating the new library of stereo Vision and since I'm pretty new to this, I would greatly appreciate a tip or two.

My setup (simple) is:

-Two cameras DSLR (Canon 50 d and 350 d and different models)

-Different objectives, but the lenses were the set manually to 35 mm

-Same (outside) lighting

-Base remotely ~ 200 mm

I calibrated individual cameras using a camera model and also corrected perspective distortion. I used a grid above in 20 different characters. Here, I have not had any problems.

A static scene was examined, and the cameras were fixed on 10 s timer.

The way, I used the stereo library to calibrate the stereo system and recorded stereo calibration data.

I used the global semi block matching alghoritm to find the image of disparity. According to the equation

where f = 35 mm and b = 200 mm.

I calculated the number of disparities and the minimal disparity for my work remotely (env. 500-3000 mm)-> disp min = 0, number of aff = 16.

With the help of a small window 7 x 7, I calculated the gap for the following acquired images (an example of acquired image pair):

Left image                                                                                                      Right image

The disparity image that I get (non-interpolated) is:

The image of depth is not calculated (empty image) for some reason any.

What I am doing wrong? I know I made a few mistakes of my simplified system (the cameras are not fixed, the optics are not the same, etc.), but what is the problem with the disparity resulting?

Is the problem in the vertical alignment of the images? From what I understand, the biggest problem is the corresponding texture. I expected more segmented images (several areas of equal depth). Are there not enough texture to match the two images?

If I try the example that comes with the Module of Vision (Vision.vi stereo), it works well.

Please help with an explanation. And if I made a mistake, please be patient with me.

Thank you and best regards,

K


Tags: NI Hardware

Similar Questions

  • Stereo Vision and projected light


    Hello

    Take a look at the following discussion:

    http://forums.NI.com/T5/machine-vision/stereo-library-2012-pointers/m-p/2171812/highlight/true#M3672...

    Also, I enclose a set of VI (LV2012) I used some time ago to get the image of depth of the stereo image pair. They consist of three steps:

    1. image acquisition,

    2 stereo calibration,

    3. the measures.

    When the measured surface is enough texture (separate), the projector is not necessary. But in low texture configurations, it can greatly improve the quality of the measured data. If the projector is used, ensure that the model is as random as possible. This should give a good starting point to the correlation algorithm. Take a look at the following article:

    http://www.Aurelien.Plyer.fr/WP-content/uploads/2012/04/pText.PDF

    On the 'Projection of light' - If you are referring to structured lighting techniques take a look at the following page:

    http://mesh.Brown.edu/byo3d/index.html

    Hope this helps you in some way.

    Best regards

    K

  • AirPlay and AirPort Express

    Bottom line on the front: My AirPort Express (N) (former model with a single ethernet port) is not listed as an AirPlay device to my iMac (2011) and MacBook Pro (2011).

    QUESTION:

    The EPA is connected to a stereo system in the same room, but away from my iMac.  I'm trying to use the EPAS to play my iTunes from my iMac to the stereo library.  When I click on the AirPlay icon in the menu, I see the ATV listed, but not the MONKEY.  If I use AirPlay on my drives to iOS, I noticed that everything (EPA and ATV).

    BACKGROUND:

    The iMac (as well as all my other Macs) are running El Capitan.  I have FiOS and my iMac is wired (ethernet) to my router from verizon, as is the Time Capsule, which transmits the WiFi to all my devices (all of my devices are newer running iOS 9.3.1) and my MacBook Pro.  I have also two AppleTV connected to the network.  My iMac and MacBook Pro (and iOS devices) see the AppleTV and can AirPlay for them, but only the iOS devices see the AirPort Express Terminal.

    RESOLUTION OF THE PROBLEMS SO FAR:

    My utility AP sees the MONKEY (and the TC) and I can handle it without problems (name change, settings, etc.).  My iPhone has no problem to see and using the EPA.  I troubleshoot-made the MONKEY by connecting to my network via ethernet (failed difficulty). reset of the MONKEY (failure of difficulty), turned on my iMac (no resolution) wifi, restarted the network and wifi (impossible difficulty), restarted my iMac and Mbps (failure of difficulty).

    What can I do else?  Thanks in advance.

    I understand in your current network setup you have the cable to the Capsule Time (TC) to the router provided by Verizon. I assume you have the AirPort Express configured to use a wireless connection to the wireless network provided by the TC.

    • What is the brand and model of the router provided by Verizon?
    • Is - this wireless router and it provides a network of Wi - Fi with the TC?
    • The TC and the Verizon router, both configured for a network of itinerant type?
    • The Express is configured to join or extend a wireless network?
    • Are the TC & Express configured as bridges?
  • Switching to SSD HARD disk drives system

    I intend to install an SSD in my current PC and move my 8.1 Windows Installer to it. I have my key and a Flash Drive with the installation. But given that the SSD is a little less than half the size of my HARD drive today (instead of 500 GB 240 GB) I can't keep everything on the HARD drive now on the SSD.

    Is there a way to define the library pointers to another drive? What workout programs installed by default? Can I keep the old drive and use for this purpose? Is there some essential applications, such as browsers or Office, this need to live on the SSD? And I can recover my Outlook e-mail directories when I re-install Outlook?

    The purpose of having an SSD is also not only for the operating system runs faster, but also for your applications. Redirect requests to the mechanical hard drive would go to this effect. You should only redirect your personal folder on the HARD disk.

    pass the SSD HARD drive

    See the instructions below how to do this using Easeus do save:

    http://www.TODO-backup.com/backup-resource/data-transfer/move-Windows8.1-from-HDD-to-SSD.htm

    You will probably need an external hard drive with enough space for the installation of backup hard disk.

    You can then use the instructions in the following article to redirect your libraries mechanical hard disk if you decide to keep it and use it for data.

    Redirect a folder to a new location - Windows help

  • Core 3.2.1 and WS 8.0.1 (impossible to build the vmmon module)

    Hello

    I try to compile WS 8.0.1 on my Debian 6, but I can't do it!

    # vmware-modconfig - console - install-all

    Stopping VMware services:
    Demon of authentication makes VMware
    VM communication interface socket family is
    Virtual machine communication interface is
    Virtual machine monitor makes
    File system is blocking
    Using 2.6.x kernel build system.
    do: entering no diretorio ' / tmp/vmware-root/modules/vmmon-only '.
    do /lib/modules/3.2.1-yamane/build/include/ - C... SUBDIRS = $PWD SRCROOT = $PWD. \
    MODULEBUILDDIR = modules
    make [1]: entering no diretorio ' / home/yamane/kernel/linux-3.2.1'
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/apic.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
    /tmp/vmware-root/modules/vmmon-only/Linux/IOMMU.c: in function 'IOMMU_AdjustMappings ':
    /tmp/vmware-root/modules/vmmon-only/Linux/IOMMU.c:180: error: implicit declaration of function 'iommu_found '.
    /tmp/vmware-root/modules/vmmon-only/Linux/IOMMU.c: in function 'IOMMU_RegisterDevice ':
    /tmp/vmware-root/modules/vmmon-only/Linux/IOMMU.c:415: error: too few arguments to function 'iommu_domain_alloc '.
    make [2]: * [/ tmp/vmware-root/modules/vmmon-only/linux/iommu.o] error 1
    make [2]: * waiting for the completion of all processes.
    make [1]: * [_module_/tmp/vmware-root/modules/vmmon-only] error 2
    make [1]: leaving directory ' / home/yamane/kernel/linux-3.2.1'
    make: * [vmmon.ko] error 2
    make: leaving directory ' / tmp/vmware-root/modules/vmmon-only '.
    Cannot install vmmon

    # cat modconfig - 5447.log


    2012 01-22 T 21: 24:07.716 - 03:00 | modconfig | I120: Log for VMware Workstation nest = 5447 version 8.0.1 = build = build-528992 option = output
    2012 01-22 T 21: 24:07.716 - 03:00 | modconfig | I120: The process is 32-bit.
    2012 01-22 T 21: 24:07.716 - 03:00 | modconfig | I120: Host codepage = UTF-8 encoding = UTF-8
    2012 01-22 T 21: 24:07.716 - 03:00 | modconfig | I120: Host is Linux 3.2.1 - yamane Debian GNU/Linux 6.0.3 (squeeze)
    2012 01-22 T 21: 24:07.661 - 03:00 | modconfig | I120: Msg_Reset:
    2012 01-22 T 21: 24:07.661 - 03:00 | modconfig | I120: [msg.dictionary.load.openFailed] cannot open the file ' / usr/lib/vmware/settings ': no such file or directory.
    2012 01-22 T 21: 24:07.661 - 03:00 | modconfig | I120: ----------------------------------------
    2012 01-22 T 21: 24:07.661 - 03:00 | modconfig | I120: Preferences file of the option PREFS not found in/usr/lib/vmware/settings. Using the default values.
    2012 01-22 T 21: 24:07.661 - 03:00 | modconfig | I120: Msg_Reset:
    2012 01-22 T 21: 24:07.662 - 03:00 | modconfig | I120: [msg.dictionary.load.openFailed] cannot open the file ' / root/.vmware/config ': no such file or directory.
    2012 01-22 T 21: 24:07.662 - 03:00 | modconfig | I120: ----------------------------------------
    2012 01-22 T 21: 24:07.662 - 03:00 | modconfig | I120: Optional preferences PREFS not found in root/.vmware/config file. Using the default values.
    2012 01-22 T 21: 24:07.662 - 03:00 | modconfig | I120: Msg_Reset:
    2012 01-22 T 21: 24:07.662 - 03:00 | modconfig | I120: [msg.dictionary.load.openFailed] cannot open the file ' / root/.vmware/preferences ': no such file or directory.
    2012 01-22 T 21: 24:07.662 - 03:00 | modconfig | I120: ----------------------------------------
    2012 01-22 T 21: 24:07.662 - 03:00 | modconfig | I120: PREF cannot load the user's preferences.
    2012 01-22 T 21: 24:07.716 - 03:00 | modconfig | I120: modconf initialized request interface
    2012 01-22 T 21: 24:07.717 - 03:00 | modconfig | I120: modconf library initialized
    2012 01-22 T 21: 24:07.719 - 03:00 | modconfig | I120: Trying to find a suitable for the core 3.2.1 - PBM yamane.
    2012 01-22 T 21: 24:07.720 - 03:00 | modconfig | I120: Your GCC version: 4.4
    2012 01-22 T 21: 24:07.720 - 03:00 | modconfig | I120: Validation/lib/modules/preferred/build/include path for the core version 3.2.1 - yamane
    2012 01-22 T 21: 24:07.720 - 03:00 | modconfig | I120: Could not find /lib/modules/preferred/build/include/linux/version.h
    2012 01-22 T 21: 24:07.720 - 03:00 | modconfig | I120: Failure of test version: /lib/modules/preferred/build/include/linux/version.h not found.
    2012 01-22 T 21: 24:07.720 - 03:00 | modconfig | I120: Validation of path /lib/modules/3.2.1-yamane/build/include for 3.2.1 - kernel version yamane
    2012 01-22 T 21: 24:07.721 - 03:00 | modconfig | I120: Your GCC version: 4.4
    2012 01-22 T 21: 24:07.726 - 03:00 | modconfig | I120: Your GCC version: 4.4
    2012 01-22 T 21: 24:07.750 - 03:00 | modconfig | I120: Header path /lib/modules/3.2.1-yamane/build/include for 3.2.1 - yamane of kernel version is valid.
    2012 01-22 T 21: 24:07.838 - 03:00 | modconfig | I120: Trying to find a suitable for the core 3.2.1 - PBM yamane.
    2012 01-22 T 21: 24:07.838 - 03:00 | modconfig | I120: Validation of path /lib/modules/3.2.1-yamane/build/include for 3.2.1 - kernel version yamane
    2012 01-22 T 21: 24:07.839 - 03:00 | modconfig | I120: Your GCC version: 4.4
    2012 01-22 T 21: 24:07.845 - 03:00 | modconfig | I120: Your GCC version: 4.4
    2012 01-22 T 21: 24:07.865 - 03:00 | modconfig | I120: Header path /lib/modules/3.2.1-yamane/build/include for 3.2.1 - yamane of kernel version is valid.
    2012 01-22 T 21: 24:07.865 - 03:00 | modconfig | I120: Building module vmmon.
    2012 01-22 T 21: 24:07.865 - 03:00 | modconfig | I120: Extract the sources of the vmmon module.
    2012 01-22 T 21: 24:07.871 - 03:00 | modconfig | I120: Module construction with the command: / usr/bin/make-j - C/tmp/vmware-root/modules/vmmon-only self-build SUPPORT_SMP = 1 HEADER_DIR=/lib/modules/3.2.1-yamane/build/include CC = / usr/bin/gcc = GREP / usr/bin/make IS_GCC_3 = no VMCCVER = 4.4.5
    2012 01-22 T 21: 24:10.155 - 03:00 | modconfig | I120: Unable to build the vmmon module.

    Completely uninstall WS.  Run the againî installation program and immediately apply the update 3.2 day form heliohost.   The links are everywhere in this list that the insataller will say that WS has been properly installed-it's not unless you apply the patch to the kernel of 3.2.  Change the version of the script for patch 8.0.1 or 4.0.1

  • to exit Type "trace" of the asmca

    Oracle GI 11.2.0.2.0
    Oracle Linux 5.6 x 86-64

    One for the "Gee, I've never seen that before."

    I connect to my server as oralce (ssh connection via putty) launch asmca, and after a short time the GUI appears very well.
    Connection with my own credentials, I launch asmca, and after a short time the GUI appears very well. But during this 'short period' means I get what amounts to a track written to my terminal. Here's a snippet to show what I mean:
    estevens:dwdev$ . oraenv
    ORACLE_SID = [dwdev] ? +ASM
    The Oracle base remains unchanged with value /u01/app/oracle
    
    
    estevens:+ASM$ asmca
    [main] [ 2012-08-23 08:42:23.139 CDT ] [UsmcaCmdLineParser.discoverRAC:239]  Cluster Existence Check
    [main] [ 2012-08-23 08:42:23.168 CDT ] [Version.isPre:465]  version to be checked 11.2.0.2.0 major version to check against10
    [main] [ 2012-08-23 08:42:23.169 CDT ] [Version.isPre:476]  isPre.java: Returning FALSE
    [main] [ 2012-08-23 08:42:23.173 CDT ] [OCR.loadLibrary:311]  
     Inside constructor of OCR
    [main] [ 2012-08-23 08:42:23.192 CDT ] [OCR.loadLibrary:319]  Going to load the ocr library
    [main] [ 2012-08-23 08:42:23.192 CDT ] [Library.load:188]  library.load
    [main] [ 2012-08-23 08:42:23.193 CDT ] [sPlatform.isHybrid:66]  osName=Linux osArch=amd64 JVM=64 rc=false
    [main] [ 2012-08-23 08:42:23.193 CDT ] [sPlatform.isHybrid:66]  osName=Linux osArch=amd64 JVM=64 rc=false
    [main] [ 2012-08-23 08:42:23.194 CDT ] [Library.load:264]  Loading  library /u01/app/oracle/11.2.0/grid/lib/libsrvmocr11.so
    [main] [ 2012-08-23 08:42:23.204 CDT ] [OCR.loadLibrary:321]  loaded ocr libraries
    [main] [ 2012-08-23 08:42:23.204 CDT ] [OCR.isCluster:959]  Calling OCRNative for isCluster()
    [main] [ 2012-08-23 08:42:23.207 CDT ] [OCR.isCluster:963]  OCR Result status = true
    [main] [ 2012-08-23 08:42:23.207 CDT ] [OCR.isCluster:975]  Bolean result = false
    There are some more, including a command and the lsnrctl status output.
    Eventualy the GUI opens and works as expected.

    I have examined the output of 'id' and find no abnormalities. The oracle account has as its primary group 'oinstall', then my main group is the same as my username (linux default behavior), but I also oinstall as a secondary group membership.

    I have examined the output of ' env | Sort ' for both accounts immediately before issuing the command 'emca' and find no abnormalities. All of the ORACL_ * variables are identical, all type of path variables are the same

    Thinking it might be related to a problem with write permissions in a log/trace file, I run asmca as the user oracle, has immediately did a ' find. -amin 2' snub but no type log or trace file.

    Ideas?

    Hi EdStevens,

    This is normal behavior, this path display on due senior year that your username (estevens) does not have permission to write in the default location of the newspapers in the Configuration directory. ($ORACLE_BASE/cfgtoollogs).

    Is launch to recommend Oracle Configuration Tools (like DBCA, ASMCA NETCA, SRVCTL ASMCMD and so on) with only the user owner of the Oracle installation. I recommend there a ton of files and directory of the ORACLE_HOME and ORACLE_BASE single user owner have permission to "RWX".

    Check the permissions under $ORACLE_HOME / and you will see most of the directories without permission to write to the Group of the OS.

    I already have had erros facing try change (reading/writing/deletion) file under ORACLE_HOME/ORACLE_BASE using Oracle Utilities with non-owner of the Oracle software. So, I always apply this rule on my company, all Oracle tools that will change ORACLE_HOME (IE configuration files), must be run with the owner of the Oracle software.

    If you give permission (rwx) oinstall Group on the directory $ORACLE_BASE/cfgtoollogs/asmca this trace will be written on the directory of Configuration logs and will not show the trace on your terminal. I do not recommend this, because you can solve the problem of the trace, but other errors can be triggered due wrong permission.

    Hope this helps,
    Levi Pereira

    Published by: Levi Pereira on 24 August 2012 13:09

  • I recently downloaded my favorite CD music in my I tunes library, how can you transfer this music on a USB Flash drive so that I can play the music through my stereo system H D - Bike. I'm 10 Windows on my PC

    I recently downloaded my favorite CD music in my I tunes library, how can you transfer this music on a USB Flash drive so that I can play the music through my H D - bike

    stereo system.

    I'm 10 Windows on my PC

    Select the songs in iTunes, let them slip into a file Explorer window showing the flash drive, drop.

    TT2

  • After the system restore, previous my library of Documents found, just empty My Documents, which is renamed My Documents 2012

    System Restore was launched twice, then at an earlier date, where I was sure that my Documents were not be corrupted which was 02/11/11.  The first restoration

    has been much later.  I get most of the functions return, but I have lost a library under My Documents (which consisted of many legal documents and information)

    I renamed existing My Documents to My Documents 2012 so that if I find the original game, none should be lost.  Listing of those lost is a surprise

    Since the system restore should return up-to-date information.  A the original operating system installation would lead me to the day. IMicrosoft Fixit has

    reported that icons have changed in their search for files and folders.  Is there a way I can locate the original program of My Documents effective

    02/11/11. I also saw generic files, not as My Documents, but the existing replacement have been replaced.

    Hi RoseForbes,

    Follow the steps in the article.

    Steps of troubleshooting for problems when you try to use the System Restore tool in Windows XP

    http://support.Microsoft.com/kb/302796

    The system restore service does not work in Windows XP

    http://support.Microsoft.com/kb/841568

  • Roxio Creator 2012 has stopped working and comes up with an error in the Visual C++ Runtime library.

    Original title: what is the number of the download version 03/03/2011 for Visual C++ 2010SP1 x 64 Redistributable?  It is newer than the 10.0.30319(x64)?

    Roxio Creator 2012 stopped running and comes up with an error in the Visual C++ Runtime library.

    Hello

    1. What is the exact full error message?

    2 is specific to the program the issue?

    3. you remember changes to the computer before the show?

     
    When was the update of Visual C++ 2010 installed and you can check the version in which it is most recent according to the installed update.
     
    Method 1:
    Install the latest version of Microsoft Visual C++ (x 64-bit) available at the following link.
     
    Method 2:
    If the problem is specific to the program perform repair installation of Roxio for the following steps.
     
    (i) by clicking on the Start button, click Control Panel, clicking programs, and then clicking programs and features, open programs and features.
     
    (II) select the program Roxio and then to change or repair a program, click on change or repair.  If you are prompted for an administrator password or a confirmation, type the password or provide confirmation.
     
     
    In addition, if the problem persists after the question in the following link
  • Error message: Setup.exe - Ordinal not found - the 62 ordinal could not be locatedin the dynamic library CSCDLL.dll, Quickbooks 2012 run

    Original title: error Ordinal 62
    I received the following error sporadically when I try the accounting version of Quickbooks 2012.  Accordingly, it does not run Quickbooks on my desktop but it allows me to run on my laptop.  Help, please.  "Setup.exe - Ordinal not found - the 62 ordinal could not be locatedin the CSCDLL.dll dynamic link library.

    Hello

     

    You can try the following steps and check.

     

    Method 1:

    Check if there is a cscui.dll C:\Windows\SysWOW64 folder.

    The cscui.dll does not exist by default in the C:\Windows\SysWOW64 folder.

    If you find the cscui.dll on the C:\Windows\SysWOW64 you can try right click and rename the cscui.dll to cscui.old.

    Method 2:

    You can run scanning of the file system [SFC] checker on the computer that will replace missing or corrupt files & check if the problem persists.

    For more information, you can consult the following link.

    How to use the System File Checker tool to fix the system files missing or corrupted on Windows Vista or Windows 7

    Method 3:

    You can also perform a clean boot and check.

    A clean boot to check if startup item or services to third-party application is causing this issue.

    You can read the following article to put the computer in a clean boot:

    How to troubleshoot a problem by performing a clean boot in Windows Vista or in Windows 7

    Note: After troubleshooting, be sure to set the computer to start as usual as mentioned in step 7 in the above article.

    You can also check the following thread link and check.

    WARNING 62 Ordinal not found in cscdll.dll

  • LR4 process 2012 edits is horrible in library view

    With the help of LR4 on iMac, Mountain Lion.  Several times I noticed that editing photos in the new point module, after him switch back to the library module, the image looks incredibly like grainly (there was a bit of noise in the original RAW file).  I see it on pictures of sky.  To try to understand where the problem lies, I undo each change and after each return, I will return to the library to see if it's better.  I found that it is as a parameter, it improved a bit with each cancellations and eliminated only after returning to the original RAW.  This never happened in LR3.  In fact if I change the process of 2010 this problem does not occur.  Kind of defeats the point of upgrade.  However, I will mention that the export of the file with the changes of a JPG file does not result in the grainly look that is seen in library mode.  Any ideas or suggestions?

    Screenshot as seen in developing

    Screen Shot 2012-09-20 at 12.27.22 PM.png

    Phot same as seen in the library

    Screen Shot 2012-09-20 at 12.28.33 PM.png

    Zoom and then zoom out, it forces to re - draw the preview you see with the necessary adaptations, the library Module

  • 'Clone' of the project library (.lvlib)

    We have a study on sound localization - move us a speaker with a robotic arm, play sound through the speaker, ask our subjects to point a laser where they perceive the location of the sound and press a button.  We can also turn on LEDs and lasers, adjust sync settings, even to move the sound source.  The various tests are "programmed" by entries into an Excel workbook with columns for the timing, healthy situation, sound settings, etc.  In addition to the Excel workbook, we generate 3 output files - a header file XML that describes the configuration of the recording (analog and digital channel names and scales) and saves the settings of each trial as it is executed, an XML event which records all of the events of "point-in-time", such as Messages, status changes, or modifies the digital I/o, and a file of examples that contains N (usually 16) sampled analog and digital channels sampled at 1 kHz.  We control all of this a LabVIEW Real-time project, which also includes routines to study, manipulate and analyze data of output files.

    The project evolves (slowly) - we are currently at Version 2.0 (Version 1.x was developed in LabVIEW 7.0, this is the complete rewrite 2012/2014, "start from scratch and do it right, or at least better").  We are contemplating adding the ability to study the sounds delivered via stereo headphones (vary the volume from left to right or by adding a small time gap between channels) and calls this Version 2.1.

    To try and prevent "Version hell", we intend to do "backward compatibility" Versions - we will Add some new columns to the workbook Excel for new parameters in headphones, but put in place LabVIEW code to simply "do nothing" (with headphones) if he reads a Version 2.0 workbook where these parameters are lacking.  This allows us to code of Version 2.1 allows to make a Version 2.0 experience.

    We are faced with one of the problems are to know how read and analyze or manipulate data files resulting.  For example, the header file contains specific sets the version of the data, which are analyzed by the XML parser and converted directly into a Cluster of LabVIEW.  Thus a Version 2.0 file must be read by the code who "knows" a Cluster of Trial Version 2.0, whereas a 2.1 file needs a trial 2.1 Cluster.

    When I read the header file, the first thing I encounter is the Version number (2.0 or 2.1).  Knowing this, I could, in principle, use a Case statement to call a Version 2.0 or Version 2.1 analysis routine.  But I am trying to 'avoid a mess', and libraries in the project seems a good way to do so, if I understand how to use them properly.

    [For now, I have to say that I tried a little experiment: I have created a new project, built Library1 in a folder with a 'Hello' and 'Test' Library1, built the library 2 (inside the folder library 2) with 'Hello' and 'Test' (different) and called the high-level.]  Worked well.  I then "took a shortcut" and copied the folder Library1 (outside of LabVIEW) on the menaces3.  When I said that the project to add 3 library, I had a mess of conflicts, which I couldn't resolve.  And I "broke" LabVIEW - even after removing all the .lvlib and the .lvproj files, I couldn't create a project and make a folder to add (Snapshot) without a missing file error to appear.  I did the experiment using LabVIEW 2012 - this problem has affected not only LabVIEW 2012, but also 2013 LabVIEW and LabVIEW 2014, but not LabVIEW 2011.  I spoke with the support of OR, which are also puzzled.  I am currently working in a new virtual machine until I can get LabVIEW "repaired"].

    What I want to do is identify all Version-specific routines in my folder of analysis and include data in this case TypeDefs for the Version-specific parts.  I would then "wrap" all this in a project library Version 2.0.  The code "on the outside" would have its own copy of TypeDefs (she could use the "Latest Version", as external routines are supposed to be 'backward compatibility'.

    So here are my questions.

    1. Suppose that I restructured my project so that I have a record, both "Real" and "Virtual" (in the project) parsing, and it contains a subfolder called Version 2.0 that contains the Version-specific TypeDefs and most of parsing code.  Is there an easy way to transform the Version 2.0 to Version 2.0 Library folder so that when I call functions in this library, they use Version 2.0 of the TypeDefs of the library, regardless of the TypeDefs declared in the main routine?

  • Assuming that I have a folder of Version 2.0 of work and the library, is there an easy way to "clone" to make a folder of Version 2.1 and the library?  If so, all I would need to do the "work" for Version 2.1 of the code would replace TypeDefs of Version 2.0 in the file of Version 2.1 with the "correct" TypeDefs, and (b) add any additional analysis code is required for the new features in the new Version.
  • I apologize for the long-winded nature of this issue.  I look for tutorials on libraries of the project (there are), but none covered this topic.  To pay for your patience, I am happy to write and submit to the OR for a future white paper on libraries of the project - which would speak?

    Bob Schor

    PS - Moderator - if it belongs to another Forum, feel free to move it.

    On the money Bob!  Save under... Duplicate the hierarchy to the new location (requires that the new library offers a new name)

    To convert a virtual folder to a lvlib just to create a new lvlib in the project and move the project members want in the new lvlib Project Explorer does the rest of the book nitty gritty on registration of the members of the lvlib with the new property information.  (You will be prompted to save the members when the composition is changed)

    And Yes, it's the kind of mistake you don't do twice.  And, believe it or not, I had this type of issue used to justify not using projects! "they are too much hassle when you mud round in windows Explorer ' then I asked them if the never borrowed the car of their father and did not him tell you parked above on the next Street.  They now use projects.

  • How to pass a pointer in calling labview library using dll programmed in Labwindows?

    Hello

    I'm trying to interface a camera with Labview.  However, the camera can only be programmed in C, so I use Labwindow CVI.

    I need to pass a handle from the camera of a function to another, for example. leave an opencamera function to function setparameter.

    / * Loading the Qcam driver and open the first camera * /.
    Sub DLLEXPORT LoadDriverAndOpenCamera()
    {
    QCam_CamListItem cameraList [10];
    unsigned long cameraListLength is sizeof (cameraList) /sizeof(cameraList[0]);.

    load the driver
    QCam_LoadDriver();
    a list of cameras
    QCam_ListCameras (cameraList, & cameraListLength);
    listLength is now the number of available cameras

    QCam_Handle CMAH;
    Open the first camera in the list
    QCam_OpenCamera (cameraList [0] .cameraId, &hCam);)
    }

    Apparently, the caemraId is a long unsigned (unsigned 32-bit by 32-bit Labview 2012?) and QCam_Handle is defined as void *, so it is a pointer that points to a non signed 32 bit.

    When I only use C for programming, I can pass variable CMAH to other duties so it is declared as a global variable.  Ex, the following function can be Sub SetParameter(QCam_Handle hCam).  However, here, I trying to do a Labwindows/CVI dll and then call LoadDriverAndOpenCamera() through library function call in Labview.

    My question is: How can I switch CMAH to other functions in the same dll?  I have to add the parameter to the function? For example:

    Sub DLLEXPORT LoadDriverAndOpenCamera(unsigned long cameraId, QCam_Handle* cameraHandle)

    And then add two lines:

    cameraId = cameraList [0] .cameraId;
    cameraHandle = CMAH;

    in the service?  So I spend cameraHandle out?  However, the CMAH will always have kind of vacuum.

    Even if this is the case, how can I configure node call library on Labview?  In the arg parameter set up, I do not see pointers?  It seems that I can not put in place an exit node to be a pointer that points to an unsigned long.

    Thank you very much for your help!

    Best,

    Charles

    Hello Charles,

    I noticed that you posted something similar here. you have questions about the use of the call library function node?

  • Dial the node library with cluster table feature using the pointer of table data

    Hi all.

    I am writing a wrapper of LabVIEW for an existing DLL function.

    The service was, as one of its parameters, an array of structures.  The structure is very simple, containing two integers.  I use the call library function node to access.

    In Labview, I created an array of clusters, when the cluster has two integers of 32 bits as members.  So far so good.

    Now, I have to pass this in the node library function call.  I use here in trouble.

    I used the LAVA so the topic in the knowledge base as my main sources of information, although I read a lot of topics in the forum on the subject too.

    I don't understand I could write a new function that takes as a parameter a struct with the size as the first member and an array as the second, and I might just do this and do call the regular service, but I was hoping to do more simply.

    The file function C LabVIEW generates for me the COLD Lake when I choose "To adapt to the Type" and "Data in the table pointer", the prototype he expects is:

    int32_t myFunc (handful of uint32_t, uint16_t channel,
    int32_t FIFOnumber, Sub data [], int32_t numWords, int32_t * actualLoaded,.
    int32_t * actualStartIndex);

    And the prototype of the function in my DLL is

    int myFunc borland_dll (DWORD channel, channel of Sina,)
    FIFOnumber int, struct mStruct * data, int, int numWords * actualLoaded, int * actualStartIndex);

    It sounds like a match for me, but it doesn't work (I get garbage in the data).  The topic referenced above LAVA, I realized it would work.  This isn't.

    If I have to cast the data to the pointer-to-pointer I get when I generate c code in my wiring to a CIN struct and by generating, then I seem to get what I expect. But it seems to work when I choose "pointers to handles" too, and I'm expecting data table pointer to give a different result.

    Is it possible to get it works directly, or I have to create a wrapper?  (I am currently using LabVIEW 2011, but we have customers using 2009 and 2012, if not other versions as well).

    Thank you.

    Batya


  • [nQSError: 93001] Cannot load library, oracore11.dll

    Hello

    I use OBIEE 11.1.1.7 and new to BI. I created pools of connections to the RPD and it connects fine but when I try to import the metadata any database tables are presented in the utility.

    In the metadata import utility, step 1 connect very well and in step 2 I selected tables, keys, and types of metadata of foreign keys, and when it comes to step 3 in the select metadata objects that I do not see the tables listed in the data source view.

    the log file records the message - [nQSError: 93001] can not load library, oracore11.dll, due, the specified module could not be found.

    I referred to in these stations and installed the client oracle too but nothing is always displayed and not luck.

    http://www.rittmanmead.com/2012/05/OBIEE-administration-tool-import-metadata-shows-no-schemas/

    If this dll is so important, why doesn't the installation of BI who?

    No idea what's going on here. I'm 100% sure that my connection is correct, because if I create a table of the physical layer and select the number of rows to update manually I can see my perfectly good data.

    Pointers are useful.

    Thank you.

    It seems that you have installed the client of Oracle 11 g properly, if you don't understand the OIC bits necessary, or is not in your path variable to the appropriate environment.

Maybe you are looking for