Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

CMOS camera chip which gives frame differennce output

Status
Not open for further replies.

sreevenkjan

Full Member level 5
Joined
Nov 4, 2013
Messages
268
Helped
27
Reputation
54
Reaction score
26
Trophy points
1,308
Location
Germany
Activity points
3,115
Hi all,

Is there a CMOS camera chip available in the market which gives difference of two successive frames??
I found a IEEE paper regarding the design of such a chip.I wanted to know if there are any IC's in the market which does this work??
 

What date was the paper published? I takes awhile for research to find its way into industrial applications. Unless there is a market for it, such a chip may not exist yet...

Perhaps you can email the authors of the paper, they might have some prototypes made up that they would be willing to sell or give away if you were willing to contribute code or do testing...
 

Hi allsey87

it was published in October 1999.the name of the paper is "A single-chip CMOS APS camera with Direct Frame Difference Output".so its quite old paper.I found one other paper from Jet propulsion labs discussing such type of chip.

I am looking for a cmos camera sensor which is used for visual tracking apps..
 

Well if there was a market for it, it should exist. I can see that this paper has 70 citations, I would follow up those citations to see if any improvements were made, or whether this technology might be available under a different name...
 

If there was, Ive never seen one. And Ive worked with a lot of video. People tend to just use standard cameras.
 

If there was, Ive never seen one. And Ive worked with a lot of video. People tend to just use standard cameras.

well I do understand that such camera chips are not much in demand but however it would be useful to do some visual tracking or motion detection where background image information would be very useful.

so in normal cameras do they have a delay line which gives images of successive frames to FPGA's??
 

Nope. You do the differencing yourself.
Differencing from one frame to another is only really useful when you have a stationary camera. As soon as its moving the difference image becomes rather noisy, and pretty useless.

There would be too small a market for a special difference output. It would require extra features in the camera that would add to the expense, like a frame buffer and memory controllers etc. Much easier to just output the live feed and let the end user take any differences they require.
 
Last edited:

Yes I am talking about stationary camera.for example if there is a situation where you have a background and then if there is a moving object such as a car,dog or a person it gives the position of these objects based on the difference of frames.

so my camera is calculating always the difference of these frames and if there is a movement it gives me the position something like a surveillance camera.
when you say user takes the difference do you mean by storing the background frame in a external memory of an evaluation board??
 

Yes, you could do that. That is very simple to do and is the simplest form of tracking.
 

well i have another question regarding the pixels coming to the fpga.

is it possible that only a single channel pixels i.e 8bit data can be sent to the fpga from the camera.I wanted to know how the pixel data comes into the fpga from the camera.does it come as a channel after channel??

could you tell me how the pixels enter the fpga from the camera??which channel pixels enter first??
 

It depends on the camera, and the format it is.
Standard cameras are analogue, so you need an A/D converter, or preferably a video decoder, to give you your digital data.
But standard video data is a data stream (ie 1 pixel per clock) with embedded TRS codes that give you the field, vertical blanking and horizontal blanking codes.
 

It depends on the camera, and the format it is.
Standard cameras are analogue, so you need an A/D converter, or preferably a video decoder, to give you your digital data.
But standard video data is a data stream (ie 1 pixel per clock) with embedded TRS codes that give you the field, vertical blanking and horizontal blanking codes.

for a camera which gives RGB data..this 1 pixel is of which channel??..

if I want to collect and process data from a digital cmos camera..how can i interface it with fpga and how can i know which pixels are being read by it??
 

What is the interface (standard analogue? cameralink? USB? gigE vision? HD-SDI? some other interface?) what format is the camera? (NTSC? PAL? Some HD format? ultra-HD?). Is it 8 bits or 10 bit?

The cheapest option will be an NTSC or PAL camera. You will need a video decoder chip to get data from the analogue output. You wont get RGB, you'll likely get 422 YCbCr format. Colour space conversion to RGB is a simple matrix conversion.

So as you can see, theres lots of variables. You probably can get an RGB stream from some camera. If you do, it will be 24 bits (unless you spend lots of money on a 10 bit per channel camera), providing the RGB channels together.
 

Well, if you want to plug it into an FPGA, you'll need a USB controller on the FPGA (very complicated, or you may need to purchase and IP block for it - not cheap) or you could just send the data to the FPGA from the PC for processing (though you wont be able to do real time video like this probably).

Easier would be to buy a cheap analogue camera and connect it to a video decoder. Or buy a dev board with one already on it
 

Well, if you want to plug it into an FPGA, you'll need a USB controller on the FPGA (very complicated, or you may need to purchase and IP block for it - not cheap) or you could just send the data to the FPGA from the PC for processing (though you wont be able to do real time video like this probably).

Easier would be to buy a cheap analogue camera and connect it to a video decoder. Or buy a dev board with one already on it

Suppose I am getting 24 bit data to FPGA.how do i know which bits represent red channel pixels,green channel and blue channel pixels?How would the video decoder give pixels as input to the FPGA??
 

Hi all,

Is there a CMOS camera chip available in the market which gives difference of two successive frames??
I found a IEEE paper regarding the design of such a chip.I wanted to know if there are any IC's in the market which does this work??

it is cheaper to do the same thing using some memory and software - done 'all' the time in higher-end security systems

same concept is often done by video compression systems
 

Read the specs of the video format. The channels will always appear in the same position.
 

Read the specs of the video format. The channels will always appear in the same position.

so if my video decoder gives a 24bit RGB then first 8bits correspond to the red channel and then green channel and then blue channel right??
 

If thats what the specs for your camera say, then yes..
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top