Brett,
The IMAQ Vision Toolkit does have extensive analysis and display functions that would save you a lot of development time. Particularly from your description, the display tools including zoom, region of interest, and overlays which allow the user to interact with the image would be very useful and hard to do with just an ActiveX control displaying the image. To use the IMAQ Vision Toolkit you have to get your image into the IMAQ image datatype so that it can be used by the VI's. There are a couple of different ways to do this.
- If the USB camera driver would return you an array of pixel values, there is a Vision function called "Array to Image.vi" which would convert it to the image datatype. This is not the fastest method because you are doulble handling the memory and when you are talking about images it is usually a lot of memory.
- There are some third-party drivers available that bring in images from USB webcams into the IMAQ Image datatype. Two can be found at INVENTeering.com and http://www.mindofpete.org/. I don't have experience with either so I can't give specifics.
- The last and easiest solution would be to switch to a IEEE 1394 (Firewire) camera that used the Industrial Digital Camera Specification. Then you could use the NI-IMAQ for IEEE 1394 driver and the Vision toolkit without any hassle. For more info check out NI-IMAQ for 1394 KnowledgeBase You can get firewire cameras for a little as $100 which are generally a better image than the average USB webcam. The little bit of extra money would probably be less than the value of your development time.
You will probably have a hard time getting a frame rate over about 7 frames per second with the usb webcam and it will vary for the different methods and drivers. I'm also not sure how control of all of the cameras attributes is done with the USB drivers. You would be able to get higher frame rates, control of camera attributes, and less development time with the 1394 solution. Hopefully, this gave you an overview of all of the possiblities.
Regards,
JR A.
Application Engineer
National Instruments