PDA

View Full Version : dmk 42buc03 + Images are bad



abikutn
July 2, 2013, 18:44:14
Hello,

I have set up a program where after a stage moves one step, the camera captures an image of the target that is placed on the stage. Its a raster scan method.

So if I have M x N steps ( horizontal x Vertical scan ) I have M x N pixels , an image is captured by dmk 42buc03 at each pixel. How ever I found out that the images at some pixels are bad and broken.

Please see the below examples for images that are bad, it looks like one part of the image is shifted and tailored at the other end.

1590
1592
http://postimg.org/image/yi4sgu5gz/

The below are the examples of good images.

http://postimg.org/image/lmr8qblff/

Please understand that these images are captured by the same labview program that is shipped with the camera.

Please explain this behavior as it is causing serious problems to our calculations.

abikutn
July 2, 2013, 18:55:27
I am using IC_Grab_IMAQ.vi for capturing and saving it using IMAQ_Write File 2 to save it as Image in my computer in JPEG format.

1593


Thanks.

Stefan Geissler
July 3, 2013, 10:37:55
Hello,

Please look on the FAQ at
http://www.theimagingsourceforums.com/faq.php?faq=ic_camerahandling#faq_ic_pismusb

abikutn
July 3, 2013, 17:25:18
The low frame rate using USB cameras and damaged images of FireWire cameras are caused by the idle states of the CPU. As far as we know, following happens: The communications controller receives a list of commands from the CPU. It starts to execute this list. Now the CPU is idle again and changes in the C3 state for power saving. When the communications controller has finished the command list, it asks the CPU for new commands. While it waits for the CPU coming from C3 into C0, the video capture device keeps sending data, which are not picked up by the communications controller. This causes a buffer overrun and leads to lost data blocks.
The USB camera driver can detect these incomplete images and will drop them. The FireWire camera driver can not detect them and therefore you will see the disturbed images.
In case you use an Intel CPU, you may try Processor Idle State Manger. It tries to prevent the CPU going into C3 state. The program can be downloaded from http://www.imagingcontrol.com/en_US/downloads/tools/

It says the USB camera can detect and drop the incomplete images. I am using a USB camera not FireWire. I tried to change the USB cable but I still see this problem. Please suggest some other method.

Stefan Geissler
July 3, 2013, 17:45:24
However, the errors can not be detected in any case. so give this small program a chance.

abikutn
July 3, 2013, 20:16:08
Stefan,

Yeh I installed the program from the link provided (see figure below)
1594

and I repeated the experiment to see if the error occurs; and these are the results.
1595
1596

Is there any other way to solve this stefan. Do let me know, this is going to be a big problem to us for doing calculations.

Thanks.

nikkadim
July 3, 2013, 21:58:10
How many cameras you are used in the same time? How may device connected to the same USB port/HUB? Did you try to reduce FPS?

abikutn
July 3, 2013, 22:22:59
Just one camera. The one mentioned in the subject of this thread. The camera is running at the lowest frame rate.

The camera is connected to a single USB port from my computer. It doesn't share or is NOT connected to any HUB. I have taken care of that.

Other devices connected to computer USB ports are : A hard drive, USB mouse, USB keyboard and USB speaker.

Other specs that may be of importance:

Processor
manufacturer Intel
model Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz
clock speed 3400.0 MHz
FSB speed 100.0 MHz
multiplier 34.0x

Display adapter 0
Name NVIDIA GeForce GT 530
Revision A1
Memory size -2048 MB
PCI device bus 1 (0x1), device 0 (0x0), function 0 (0x0)
Vendor ID 0x10DE (0x174B)
Model ID 0x0DE5 (0x7162)
Performance Level Default
Core clock 50.5 MHz
Shader clock 101.0 MHz
Memory clock 135.0 MHz
Performance Level 2D Desktop
Core clock 405.0 MHz
Shader clock 810.0 MHz
Memory clock 324.0 MHz
Performance Level 3D Applications
Core clock 699.5 MHz
Shader clock 1399.0 MHz
Memory clock 793.0 MHz

Windows Version Microsoft Windows 7 (6.1) Home Premium Edition Service Pack 1 (Build 7601)

Stefan Geissler
July 4, 2013, 12:08:37
Your computer is very fine and does nothing almost. Therefore it goes into power saving mode, which causes the damaged images. Did you try the Processor Idle State Manager? If not, please do so.
Thank you.

abikutn
July 4, 2013, 15:39:28
Yes . Please see Post # 6 above. I have given the image links that shows your processor idle state manager is running in background and also the bad images obtained even after it is running.

Thanks.

Stefan Geissler
July 4, 2013, 15:46:09
Sorry, I did not saw #6.


However: In the image seems a data block being missed, so the rest of the image is moved to wrong positions. This happens, if the USB controller does not pickup the data provided by the camera in time.

I must admit, I run out of ideas. Did you try to connect the camera to another usb port, so it may is connected to another controller of your computer?

abikutn
July 4, 2013, 19:41:58
No I did not try that. I will try that.

abikutn
July 6, 2013, 01:54:09
No stefan, I have 7 USB ports and in none of them they work. Any other ideas ? ...

Stefan Geissler
July 8, 2013, 10:45:24
Hello,

I am testing this on my own, my computer is a Core i7, running without Processor Idle State Manager. I found no problems. But I use C++ instead of LabVIEW.

So lets compare firmware versions, please let me know the serial number of your camera.
Also I need to know, which video format you use, which exposure and gain settings. I suppose, you do not run the camera triggered, right?

nikkadim
July 8, 2013, 14:01:45
I have this camera and I have LabVIEW too, if needed I can check from my side if you share this IC_Grab_IMAQ.vi
I can't find this VI in package ic_labview_extension_setup.exe

abikutn
July 8, 2013, 20:11:57
Hello,

I am testing this on my own, my computer is a Core i7, running without Processor Idle State Manager. I found no problems. But I use C++ instead of LabVIEW.

So lets compare firmware versions, please let me know the serial number of your camera.
Also I need to know, which video format you use, which exposure and gain settings. I suppose, you do not run the camera triggered, right?

Ok what is firmware version , how can I find it out ?

The camera model : dmk 42buc03 (monochrome)

These are the sticker that is on the camera.
1597
1598

Imaging control software I use.
1599

Exposure , Gain : set to minimum always ( since working in dark room we want bright images)

Image Format : Y800 (1280x960)

External trigger : No.( I don't run it because I cant get it to work with external trigger. )

abikutn
July 8, 2013, 20:21:48
I have this camera and I have LabVIEW too, if needed I can check from my side if you share this IC_Grab_IMAQ.vi
I can't find this VI in package ic_labview_extension_setup.exe

Hello sir,

IC_Grab_IMAQ.vi must be available in you IC labview extension if you have installed it correctly.

See this image to find where it is:

1600
Please find the attached file (Desktop.rar). Also please share your LabView program here once you are able to test it out, I want to try it on my computer. This file has the .lib which contains all the VI's associated with IC labview extension and you can find what you want here.

1601

nikkadim
July 10, 2013, 14:16:15
I just tried Device Setup.vi with my 42BUC03-ML (fw version 135).

1602
I have no problem with image.

abikutn
July 10, 2013, 14:53:33
I just tried Device Setup.vi with my 42BUC03-ML (fw version 135).

1602
I have no problem with image.

DeviceSetup.vi doesn't have any problem. But it's the continuous grab of images that gives the problem.

nikkadim
July 10, 2013, 15:27:35
DeviceSetup.vi doesn't have any problem. But it's the continuous grab of images that gives the problem.
Ok, could you share the problem VI for me?

abikutn
July 10, 2013, 16:34:01
nikkadim,

Here is the VI you asked for,

I hope you have NI Vision toolkit installed , Because I use a IMAQ write function that saves the picture to hard-disk.

See this picture for using the program:
1606

1a. Click on RUN button (see picture)
1b.Choose X pixels and Y pixels ... Choose 35x35 so that you see 1225 images.
1c. You have to assign a folder directory before starting the scan, (See picture)
2. you can choose any camera configuration file that you saved using DeviceSetup.VI by clicking on Device config. (see picture)
3. click on start scan to simulate a scan. (see picture)
4. Ignore all other fields. Let the program complete. Click STOP to abort.

Good Image:
1608

Bad Image:

http://postimg.org/image/flyglp4gt/

I really feel there is something wrong with the camera hardware or firmware.
It has nothing to do with idle state perhaps.

PS: Please share your VI that works, I can try that on my computer

abikutn
July 15, 2013, 19:08:56
Is there any update on this problem ?

Stefan Geissler
July 16, 2013, 10:39:24
Is it possible to check the very same with IC Capture? I do not think, its an issue of the camera, because it is not capable of mixing up the data packets.

abikutn
July 17, 2013, 16:12:30
Do you mean with IC capture SDK ? How can I use that in LabView.

Stefan Geissler
July 17, 2013, 17:22:10
No, I mean "Enduser" IC Capture download.

abikutn
July 18, 2013, 16:33:20
Ok I shall try that, can I capture sequences of single images with IC capture ?.

Stefan Geissler
July 19, 2013, 08:57:11
As you want. We want to see, whether you receive the same issue in there too