What is the fastest way to record and write image data?

Hello,
I am new to labview and am using the IMAQ software package to record and write data from a CCD camera to the hard drive. The end goal is a program that records and saves as much data as possible as quickly as possible, for experiments lasting on the scale of days. I have been experimenting with the snap, grab, and sequence methods of recording. To save the image data I was told by NI customer support that TDMS streaming would be the fastest method. I have also been experimenting with the TDMS VIs, however I have found the IMAQ Write File 2 VI to be faster in practice. Am I doing something wrong with the TDMS file structure? Is there a more efficient way to convert IMAQ image data to a dataform that can be written as TDMS? I am posting two of my programs to provide a clearer example of what I am trying to do. The first takes a snap of the image and appends it to a TDMS file. The second is the fastest I have found so far and uses Grab to record the images and the IMAQ Write File VI to save them. 
Thanks
Attachments:
Camera Capture (Snap) and stream TDMS.vi ‏24 KB
Camera Capture (Grab) and write image.vi ‏24 KB

Hi
For me it is no surprise that the second VI is faster then the first one, the reason is you can not compare this two VI with each other.
In the first VI you work with TDMS files, in the second with png files. That would be much faster, because TDMS files need a lot of diskspace.
Second point, why do you open, write and close for eacht iteration of the for loop a TDMS file in your first VI? That need really a lot of resources, so it coudn´t be fats as well.
Save your converted pictures in one array, an after the acquisition you can save it in one TDMS file. When you need for each picture a TDMS file you have to know that this need some time to do this.
So now for the architecture of your first VI, please look to the LL Sequence.vifrom the examples (C:\Program Files\National Instruments\LabVIEW 8.6\examples\IMAQ\IMAQ Low Level.llb\LL Sequence.vi), there you can see how an acquisition of a number of images have been to do.
When you like it really fast, you make a producer/consumer architecture (see examples in LabVIEW for that).
So in the first whileloop you acquire the images, write into a queue and in the second, parallel whileloop you read the queue and save the images. (see attachment)
Hope that helps
Kind regards
Beat
NI Germany
Attachments:
ProducerConsumerData.vi ‏10 KB
ProducerConsumerData_LV8.5.vi ‏12 KB

Similar Messages

  • What is the best way to store and search 2D data

    Hi,
    There is a set of data (~10k records ) in 2D dimension.
    like this :
    Col 1, Col 2, Col3....
    What is the best way to store and search those records ?
    Thanks in advance
    Wilson

    Hi,
    Either userObjet[][] if you know how much data you have, and the data size is fixed, or use a list of lists. E.g. A Vector of Vectors (some will probably say that you should use an ArrayList instead, and that could be the case, but it sounds like you would want to display the data later on, and a DefaultTableModel (for JTables) uses a Vector as data holder).
    Kaj

  • What is the best way to read and manipulate large data in excel files and show them in Sharepoint

    Hi ,
    I have a large excel file that has 700,000 records in it. The excel file has a few columns that change every day.
    What is the best way to read the data form the excel file in fastest and most efficient way.
    2 nd Problem,
    I have one excel file that has many rows each row contain some data that has certain keywords.
    What I want is  to segregate the data of rows into respective sheets(tabs ) in the workbook.
    for example in rows have following data 
    1. Alfa
    2beta
    3 gama
    4beta
    5gama
    6gama
    7alfa
    in excel
    I want there to be 3 tabs now with each of the key words alfa beta and gamma.

    Hi,
    I don't really see any better options for SharePoint. SharePoint use other production called 'Office Web App' to allow users to view/edit Microsoft Office documents (word, excel etc.). But the web version of excel doesn't support that much records as well
    as there's size limitations (probably the default max size is 10MB).
    Regarding second problem, I think you need some custom solutions (like a SharePoint timer job/webpart ) to read and present data.
    However, if you can reduce the excel file records to something near 16k (which is supported rows in web version of excel) then you can use SharePoint Excel service to refresh data automatically in the excel file in SharePoint from some external sources.
    Thanks,
    Sohel Rana
    http://ranaictiu-technicalblog.blogspot.com

  • What is the fastest way to transfer files and applications from an older iMac to a new MacBook Pro?

    What is the fastest way to transfer files and applications from an older iMac to a new MacBook Pro?
    I have a Firewire cable and Thunderbolt adapter, but no icons showing either Mac appear on either desktop.

    The fastest way is to use Carbon Copy Cloner and a external drive formatted GUID OS X Ext. J in Disk Utlilty, then connecting to the new Mac and using Migration Assistant in the Utilites folder.
    Even faster, if you can determine your going to replace all the apps from fresh sources anyway (like if the older Mac's OS X verison is old thus the apps) then just use a external drive and copy just your files to it, then connect to the new Mac and transfer over.
    Some apps you can just grab the registration code and install it fresh on the new machine with the old code, talk to the developer about transfering the program, as long as it's deleted on the older Mac in the process.
    It used to be Firewire Target disk mode was fastest, but since Thunderbolt came out...
    Notice this support doc hasn't been updated since june 2012, no Thunderbolt info
    https://support.apple.com/kb/HT1661

  • IMovie: whats the fastest way to import and save all original media?

    Good afternoon. Ok I need help please. Is there a way to simply take all the imported original media and just save it all in one fell swoop? Rather than having to import and then process/export clip by clip.
    I thought I had a quicker way just grabbing all the original media from the imported camera (right clicking imovie library > show package contents > original media) untill I tried to play one of the original media files - no sound and it was mov file. I assume mp4 is better???
    I have 2800 hours of video I need to import off my camera. I don't need to modify them at all, aside from the occasional combining of clips into one movie. So I need the fastest way. Importing and then exporting clip by clip will take me forever. I would prefer to just import and then just drag all 50 clips or so into my movies folder. But as stated above that does not seem to work as expected unless I'm missing a step.
    Thank you!

    ps Can I take the original media files (mov format) and batch convert them using handbrake or MPEG streamclip? And if so would the resulting videos then have sound? And which is the best format (container codec whatever) to export them to? Thanks!

  • What is the proper way to record line numbers in Master/Detail records?

    Guys and Gals,
    Been thinking about this for awhile, but thought it best to ask the people who really know what they are doing.
    What is the proper way to record & show line numbers in a Master / Detail record set?
    For example, take Master/Detail relationship Orders and OrderItems. Orders has a column Document_Number and OrderItems has Document_Number, Line_Number. Line_Number should contain the row number 1,2,3,4 ... etc. for each row in a document.
    Should I ...
    <ol><li>Add a sequence and a trigger in the database? The FusionOrderDemo does this, but then the sequence never "resets" and I've got row numbers that keep incrementing. So one document has rows 4,5,6 and the next document has 7,8,9 when they should both have 1,2,3.</li>
    <li>Programmatically take care of the row numbers? This seems like I'm asking for trouble. Anytime an insert or delete operation gets done, I'll have to iterate through rows and re-assign row numbers.</li>
    <li>Is there a way to assign row numbers in a table iterator (or data collection?) to an entity?</li></ol>
    Any suggestions would be appreciated. It's looking like #2 is my only option, but if anyone knows different I'd love the input.
    Will

    Thank you both guys.
    As John said, I believe I'm looking for a gap-free sequence per master record.
    The line number of the OrderItems table is the second half of the primary key. The first half of the primary key (DocumentNumber) is the foreign key to the Orders table.
    Think of it like line items on an order or invoice. For example, if you were talking to someone on the phone concerning an invoice, you might say, "The pricing for line item #3 is incorrect." In this case, it's good to have a common reference. Or imagine a Microsoft Excel spreadsheet with no row numbers displayed! You'd never get anywhere if you had to explain something over the phone.
    If this is tricky to perform, I take it using a sequence and trigger such as the Fusion Order Demo is the best way to approach the challenge for simplicity's sake?
    Will

  • What is the best way to scan and sort old photos in iPhoto

    What is the best way to scan and sort old photos in iPhoto?  They do not have digital dates.

    Hey Chicago Sue,
    Once you scan them and have them on your desktop. You should use Automator and assign the common IPTC tags to the images, so that when you do import them into iPhoto, they get recorded.
    Here is an example of an action in Automator:

  • What is the fastest way of getting data?

    With a scanning electron microscope, I need to scan a 512*512 pixel area with a pixel repetition of 15000 (two channels), meaning averaging over 15000 measurements. Simultaneously I have to adjust the voltage output for every pixel.
    I am using a 6111E Multifunction I/O board in a 800MHz P3. The whole task has do be done as fast as possible (not more than 20 minutes altogether).
    What is the fastest way to get this huge amount of data with averaging and output in between? (E.g. do I use buffered read with hardware triggering or is there a faster way?)

    Using the NI-DAQ API (not LabView) will give you a significant amount of more control over what happens and when to the data stream; which translates to a more efficient program. But you need to program in C/C++ or Delphi then. The Measurement Studio provides ActiveX controls that are like the LabView ones for C&C++ (they�re slow like the LabView ones though � not a lot you can do about the Windows GDI).
    What are you trying to sample 15000 times? The 512*512 pixel field?
    That�s almost 15Gigs of data! And it means you need to process data at 12.8MB/s to finish it in 20 minutes. I hope you know C, x86 assembly and MMX.
    I would setup a huge circular buffer (NI-DAQ calls them �double buffers�), about 30 seconds worth or so, to use with SCAN_Start. Then I would proces
    s the actual buffer the card is DMA�ing the data into with a high priority thread. Progressively sum the scan values from the 16bit buffer (the samples are only 12 bit, but the buffer should still be 16bits wide) into a secondary buffer of DWORDs the size of the screen (512*512), and you�ll need two of those, one for each channel. Once the 15000 scans are complete, convert each entry into a float divide by 15000.0f, and store it in a third buffer of floats.
    If you wish to contract this out, send me an email at [email protected]

  • What is the best way to record a project to an external recorded via firewire. Also, who makes a recorder that works with a mac?

    What is the best way to record a project from the timeline to an external recorder via firewire? Also, who makes a recorder that works with a mac and recordes in realtime? This is possible right?

    While theoretically possible, sometimes the camera people disable recording back to tape from the computer due to DRM (digital rights managment) issues. They will allow tape to tape transfers however.
    Test your process first is all I can advise.
    x

  • Sq01 what is the fastest way,

    hi all,
    what is the fastest way to detect coding that update to eban  from sq01?
    as i am facing problem with more than 100,000 PRs updated mysteriously (customer tab data ) without any history changes .
    i suspected it might be from query and i need to find the root cause of problem immediately
    pls advice

    Hi Ester,
    Haven't got clearly what you written.
    You mean to say, there is modifications done to query for updation?
    if it is a standard code then I don't think it is used for modification.
    Regards,
    Atish

  • What's the fastest way to share files live between 2 Macs in the same room?

    Please can I have some advice on this scenario?
    I'll need to share HD video footage between 2 new Mac Pros in the same room. 1 Mac will be used to upload the footage and the other to edit it using FCP. The footage can be stored either on hard drives in the edit machine or on desktop hard drives connected to the edit machine (or if there is a better option I'm open to advice).
    What is the fastest way of sharing the files and what is the simplest way?
    Any suggestions would be greatly appreciated.
    Thanks in advance

    What is the fastest way of sharing the files and what is the simplest way?
    Fastest way? a fiber channel SAN connecting the two machines to a common fiber-channel based storage array. Can't beat it for performance, but it comes at a cost (think $20K as a starting point, depending on the amount of storage you need).
    Simplest way? Some external media (thumb drive, external hard drive, etc.) that you shuffle between the two machines
    Intermediate: a NAS-based storage box on your network, although be aware that real-time editing of HD video can overwhelm many low-end NAS boxes.

  • What is the best way of recording bass

    Hi Peeps
    What is the best way to record a bass guitar in Logic. I'm going through a Fast Track Pro Audio Interface. The songs we are recording a disco cover, like get down on it and freak out, so need quite a warm rounded tone to them with a solid level.
    Thanks
    Matt

    Hi Peeps
    What is the best way to record a bass guitar in Logic. I'm going through a Fast Track Pro Audio Interface. The songs we are recording a disco cover, like get down on it and freak out, so need quite a warm rounded tone to them with a solid level.
    Thanks
    Matt

  • What's the fastest way to kill the battery...

    hello friends. i was wondering what's the fastest way to drain my macbook pro battery so i can calibrate it? i want to kill the battery not the laptop if you know what i mean. thanks.

    Turn on wifi + bluetooth and turn the brightness all the way up, and if its a new mbp, turn off the automatic video card switching in energy saver. Then just play youtube videos / movies / games (anything that uses the vid card as much as possible helps) till it goes flat.
    Message was edited by: TiMatApple

  • What's the fastest way to change IP addresses in a Project?

    Hi folks,
    I'm using a cFP2100 controller with LabVIEW 8.2.1.  I made a project using a configuration I created in MAX.  Now I've moved the whole bank of modules to a new location, and the controller now has a new IP address via DHCP.  My question is, what's the fastest way to update the IP address for my project?  Do I have to make a brand new project with a new .iak file that has the new IP address?  I'm thinking there's got to be an easier way.
    Thanks!
    Eric

    Hi Eric,
    Since you are getting your IP address from a DHCP server, the IP address of your Fieldpoint device is ultimately dependant on the server.  If your IP address changes, you have two choices.   You can right click your target and go to properties.  In the properties under the general category, you can change the IP address of the target.  The second option is to import a new IAK file into your project by right clicking the Project Name and going to import>>iak file. 
    I hope this helps,
    Regards,
    Nadim
    Applications Engineering
    National Instruments

  • HT1364 I just bought a new PC and now have ample space on my C drive to house my music Library which is currenlty installed on a external drive.  What is the best way to install and move the itunes library to my C Drive?

    I just bought a new PC and now have ample space on my C drive to house my music Library which is currenlty installed on a external drive.  What is the best way to install and move the itunes library to my C Drive?

    If the entire library is on the external drive then simply copy the iTunes folder into <User's Music> on the new computer, then install iTunes. If you've already installed iTunes you will want to remove the empty iTunes folder in <User's Music> first.
    If it turns out you only have the media folder on the external drive then take a look at this post...
    tt2

Maybe you are looking for

  • I am on Windows 7 with iTunes10.6.1.7 and not able to install 10.7 on a 32bit machine

    The computer is 32bit Dell with 2GB Ram and 2 GHZ

  • In need of urgent Help!!!! nokia 6280

    How do I save my contacts to the sim?i have all my contacts saved on my phone and want to save them on the sim to put in my new phone just seems imposable to save the on the sim if you dont save them straight away to the sim

  • When Opening Excel file, there is a message

    Dear BPC Experts:    When I open excel files in BPC NW 7.0, there is a warning message saying "Programmatic access to Visual Project in not trusted" Does anyone have suggestion for this message? Thanks in advance. -Fred Edited by: Fred Cheng on Jul 2

  • KokChoy: Control Panel crash with newest PCI drivers

    As another user posted, when using the newest PCI drivers posted, in my case, the Xtreme Music X-Fi drivers, marked as 2.8.500, the control panel, crashes or hangs when loading under Windows 7 or windows vista 64 bit. Can you please confirm or relay

  • Iphoto Flagging NOT working ??

    I just scrolled through about 15,000 photos and flagged 100's i wanted to use for my website. They are NOT showing up in flagged photos- though each individual photo IS correctly  flagged. I also tried creating an event from flagged photos to see if