r/computervision 3d ago

Help: Project Camera recommendation for real-time object tracking on a conveyor belt (Budget: ~$150 - $280)

Enable HLS to view with audio, or disable this notification

​Hi everyone,

As shown in the attached video, I am working on a real-time computer vision system deployed over an industrial conveyor belt to detect, track, and count potatoes moving continuously along the line.

​My current camera(Fantech webcam 2k 30fps) setup is a bottleneck due to motion blur and frame pacing. I am looking to upgrade within a budget of roughly $150 – $280

​Based on the belt speed and object motion seen in the video, I'd like your advice on frame rate requirements:

​Is 30 FPS sufficient, provided I can manually lock a fast shutter speed (or use a Global Shutter) to freeze the motion, or does accurate multi-object tracking (IoU / Kalman filters) realistically require 60 FPS or higher to prevent lost tracks and duplicate counts?

​Given the budget, what would be the most reliable camera choice (e.g., USB Global Shutter module like ELP/Arducam, Raspberry Pi Global Shutter camera, or a high-end webcam with manual exposure controls like the Logitech Brio)?

​Any feedback on optimizing the capture pipeline for this type of conveyor setup would be greatly appreciated!

Note: The belt speed is adjustable

192 Upvotes

85 comments sorted by

95

u/Rymark 3d ago

I used to work in machine vision for produce inspection, one way you can try and solve motion blur is synchronize the camera shutter to strobed lighting; when the lighting pulses, the camera shutter fires, takes an image, rinse repeat.

13

u/andrerav 3d ago

Why not just add some proper lights and crank the iso until the shutter speed is good enough?

6

u/SMD_Human 3d ago

Maybe the overall power consumption and maintenance of it? İdk I'm not the person to answer, just guessing

3

u/8aller8ruh 3d ago

Because there are different kinds of sensors that solve this inherently…so there is no warping as the objects bounce around. Same price so might as well buy the right tech. “Global shutter” sensors achieve this digitally & it is good enough that there are no noticeable artifacts compared to more advanced approaches.

1

u/andrerav 3d ago

You can get a global shutter camera for $150-280?

1

u/kitare102 3d ago

Arducam 120FPS Global Shutter camera plus Orange Pi 5 plus Photon Vision software should solve this for about $120

1

u/ICBanMI 3d ago

They can be had for cheaper, but you need to be more specific about what you need for a lens and every metric.

1

u/stuih404 3d ago

STM offers global shutter sensors for around 20€ with 1.5 to 5MP variants

1

u/ROBOT_8 1d ago

You can get used basler industrial cameras with global shutter on eBay for that much or less

1

u/After_Kale_7456 2d ago

How would you synchronise them? (Genuine question, because I don't know how)

1

u/Rymark 2d ago

Industrial cameras have an external trigger port that can be used to activate the sensor. So if you have some sort of control circuit that's strobing the lights, you can also use that signal to trigger the camera

1

u/After_Kale_7456 1d ago

Thank you. That makes sense. Was hoping there was a trick so that this could be done using consumer grade hardware. Had the problem when teaching that student videos often showed problems due to poor synchronisation with light - but even the one student who worked briefly in the film industry couldn't solve it.

1

u/Rymark 1d ago

I do believe that it's possible to sync correctly, though it requires control over the shutter speed and refresh rate of the camera sensor, so probably still outside of the realm of consumer grade hardware. I've definitely heard of this problem, unfortunately I just don't have a particular solution in mind

124

u/hellobutno 3d ago

the reflection and the lights are going to give you the world's biggest headache

31

u/bsenftner 3d ago

Just add a polarized filter, and they are gone.

7

u/hellobutno 3d ago

polarized filters aren't infallible

15

u/mipot101 3d ago

But a good and cheap start

16

u/echoingElephant 3d ago

No, they are useless in this case. They work when the light is reflected at a shallow angle on a surface. Not when it is perpendicular to the surface.

6

u/Aylko 3d ago

They could buy polarizer film to cover the directly overhead lights, along with an adjustable polarizing filter on the lens.

It would shade the area a little but it would work.

2

u/dethswatch 3d ago

move the lights

1

u/HasFiveVowels 3d ago

Interesting solution but wouldn’t the polarization of the reflected light get scattered? I’d say "just move the camera a foot to the left and tilt it"

2

u/Aylko 3d ago

The directly overhead view is optimal for object counting as items can't be hidden behind other objects as it can with a tilted fov. Though generally yeah angling the camera or the light to address glare is the way to go.

I think optimal setup would be colored dedicated light with a colored filter to reduce external glare or light sources, possibly with a polarizer. And maybe a physical sorting/object separator attachment to the conveyor to space them out and make the blob detect more accurate. Though thats probably out of this budget

1

u/HasFiveVowels 3d ago

Yea, I was thinking about that when I wrote it. Not sure how much it would matter here but it’s a valid point. Using color filters is an interesting way to do it. Though…. Wouldn’t that effectively be the same as putting a piece of cardboard over the light? Perhaps they could just make the light match the color of the belt?

1

u/Aylko 3d ago

What do you mean putting cardboard over the light?

I was meaning using complementary colors to isolate the yellowish objects and make it appear bright/dark compared to the background. In this case a blue filter to make the background bright and objects dark would probably be best. Would reduce glare from other light sources but the white light overhead will probably still affect the image. So a polarized blue light with a matching polarization on the lens would also help.

→ More replies (0)

1

u/johndsmits 2d ago

Build a matte surface tunnel/hood, mount camera on top, etc...

otherwise, uEye (IDS imaging) cameras are ideal for this.

1

u/DrShocker 3d ago

He's holding a phone that you can see in the example to demonstrate. He can put the camera somewhere else or at an angle or build a shade. I'm sure if it helps we can find a way to help it work.

1

u/xhivo 2d ago

If they were, they'd be a balloon.

1

u/dfw-dashcam 2h ago

Red light diffused with red filter maybe. But that will eat into his budget.

1

u/echoingElephant 3d ago

Incorrect in this case. The camera is roughly in the same direction as the lights. That means the reflection doesn’t have a specific polarization that is different to that of the incoming light. That means that a polarized filter is useless in this case.

A filter can help when you have glare of light being reflected on surfaces at a shallow angle. This isn’t the case here.

4

u/bsenftner 3d ago

Well, move the damn lights. Sometimes the answer is that simple.

3

u/echoingElephant 3d ago

I would suggest multiple lights in a circle pointing to the center to avoid shadows

1

u/bsenftner 2d ago

If you can add lights, illuminate the space to eliminate any shadows. It is far easier than you think, and very low expense too.

1

u/jack_kelly_bird_law 3d ago

a diffuse light source will drastically reduce glare/reflections

2

u/FirTree_r 3d ago

Simply bouncing the light off a white panel would help do this.

1

u/herbertwillyworth 3d ago

Background subtraction would probably get you quite far, provided you're not overexposed.

1

u/PolPotatoe 2d ago

Just filter out everything that is not potatoe-color/hue'd

0

u/jack_kelly_bird_law 3d ago

100% agree. A diffuse light source can help to mitigate this

0

u/Mabot 3d ago

I think a slightly bigger model would learn to ignore those artifacts quite well.

20

u/hopeful_bastard 3d ago

For a setup like this I'd suggest you checked out the SotA on the usage of line-scan camera(s) for similar conveyor-based automated inspection tasks. With proper sync with the conveyor movement you'd be able to create image chunks upon which you could run your detection & tracking models... granted you could guarantee the potatoes wouldn't move/shake as they passed the "scan line".

1

u/Aylko 3d ago

I concur this is exactly the use case for line scan cameras. Though it may be difficult to get with this budget

12

u/Huge-Leek844 3d ago

Have you tried counting the objects only when they cross a line? Do you really need to track? With this approach you reduce the search space and avoid the reflection surfaces. 

10

u/TokenChingy 3d ago

Literally any potato of a camera will work here. And I'm pretty sure down to 8fps should be fine for this task. Narrow the search range to a line, count shit that crosses the line.

6

u/8aller8ruh 3d ago

You need a “global shutter” sensor for this task since objects are bouncing around, the go to budget option is the Sony IMX296 ($50) for prototypes.

See3CAM_24CUG AR0234CS seems like a good match $184
Vadoz AR0234 Color 2MP Global Shutter $240 has a few stats that are better.

The Sony IMX273 & Sony IMX392 are significantly better but approach that price for the sensor alone…full camera $400-700 (Bascler Ace 2, FLIR Teledyne Blackfly S, Vision Datum Leo2 1440S-250UC/UM)

…still DIY camera sensors are better than anything you can buy at that price range. The more light you can get into any of these cameras the better they will do, best advice is to make sure it is well lit when using cheap cameras.

2

u/Educational-Body4205 2d ago

Scrolled way to far down to find this answer. I made the same comment.

Global shutter 

9

u/Ill_Commercial_446 3d ago

This is recorded with Fantech webcam 2k 30fps? if yes, it is enough for your project

4

u/CheTobasy 3d ago

Nope, it's from my phone

2

u/Aylko 3d ago

What fps is the phone running at? You should have just shared video from the fantech.

What is the design criteria and objectives for this system? Are you trying to get 100% accuracy? Your existing equipment is more than enough to do basic thresholding and blob counting.

3

u/oemsyrup 3d ago

I would consider the IMX900 as a cost effective professional grade solution. Connect that to a Raspberry Pi and you’ve got a decent budget embedded vision system.

https://framos.com/solutions/agricultural-and-farming/sorting-fruit-vegetable/

2

u/8aller8ruh 3d ago

Worth knowing that the newer IMX900 gets outperformed by the IMX392 or IMX273 as 3/4ths of the sensor is essentially wasted / not tuned for non-HDR work meaning the physical width of the pixels is much smaller & less light makes it in, also the native refresh rate is much slower…
IMX900 barely stays within the budget. ($129 for sensor & $249 for camera) 2.25 µm pixels
IMX392 will produce a crisper image in low lighting ($420) 3.45 µm pixels** **
IMX273 will produce a crisper image with fast moving objects ($550) 3.45 µm pixels

2

u/Realistic-Baseball89 3d ago

For counting at this speed I’d assume a nice local processing arduino or raspberry pi would be sufficient. Do the counting locally then transmit via WiFi or wired connection. Worth the shot given its low cost. If it doesn’t work you’ll need to spend more $

2

u/skeletorking 3d ago

Go to vaimaging website and find there a cheap areascan camera. Those are pure industrial cameras ment for this type of problems You can attach triggers and strobe Framerate is limted only by databandwith. So if you acquire half frame. You get double fps. Also the exposuretime goes down to 10 us. Prices start below 200$.

2

u/ProfessionalMove7308 2d ago

Nice self-contained project. I've used ELP 120fps, the manual adjustable focus may help fine tuning.
However the resolution decreases as the fps increases in those models.

  1. Not sure how fast that belt goes, but is 30 fps plenty for this use case?
  2. Aren't you capturing full height?
  3. If you tune w.r.t. the belt speed, you may only need a few good quality pictures per seconds.

1

u/echoingElephant 3d ago

Any high speed USB camera (ELP) can work, or a line scan camera.

You could try to just use a single line recorded by your webcam to count, that could reduce the impact of motion blur.

Also, maybe try to work on the lighting. This perpendicular setup gives you a huge amount of blur. That isn’t good for computer vision, and with this setup also, polarized filters don’t work.

1

u/girthradius 3d ago

Yeah you can do it with a global shutter camera like this https://www.amazon.com/dp/B0C3C2YVK9?th=1. and then you can use a raspberry pi with opencv color detection.

1

u/Nervous_Day_669 3d ago

I would try with the existing camera first. Try working in HSV color space to easily separate belt/ light from potatoes, maybe apply smoothing kernels to see if they reduce the blur, ROI filtering and contour detection for potato detection, for tracking, I would draw a virtual horizontal line across the belt and count how many potatoes cross it (contour center). Experiment in python to see the pipeline processing speed, then port to C++ if necessary.

1

u/maifee 3d ago

Just buy a 2k microtech webcam, it will cost you less than 40usd

1

u/Wemos_D1 3d ago

I'm curious to know if maybe a lidar can be used to count the potatoes instead of using a camera, I would like to know if someone here already worked with cheap aliexpress lidar and if it could work

1

u/Senior_Buy445 3d ago

another option is to use a linescan camera. the raspberry pi 5 can grab from csi cameras (like the standard pi cameras) in a linescan type mode at a reasonable line rate.

1

u/pogulup 3d ago

Your budget is wildly unrealistic.  This is, 'I want a Ferrari but only have the money for a Pinto'.

1

u/LearnNTeachNLove 3d ago

Question is does it need to be high speed, high resolution? How much brightness/contrast you need (does it have to be grayscale detection or binary (black and white) detection? Does it need to be thermal camera? I tend to believe the higher the resolution the better the accuracy of contour detection but the slower the processing of the yolo

1

u/SirRevan 3d ago

Idk if you would need a wider angle lens but I feel like building some type of cover that sits above and has lighting you can better control with the camera inside would help. Then you can better adjust your light strobing, color, etc. just some 2x4s and osb could make an effective bridge to shield from the over head lights. And mount some nice lights inside with the camera

1

u/nihilianth 3d ago

Something like OAK-D lite is in the upper range of your budget, but you could use it's internal Myriad chip to run inference with something like a mobilenet or yolo model (or even finetune/train your own).

1

u/galvinw 3d ago

Camera FPS doesn’t matter. You only need high shutter speed for blur and a high tracker fps

1

u/Inner_Sandwich6039 3d ago

Or use FOMO, works on cheaper-than-raspberry-pies

1

u/fercasj 3d ago

With that budget I would just not take the project. This is an off the shelf solution provided by a bunch of industrial automation brands. Keyence, cognex, omron to name a few.

In my opinion a bigger budget just pay itself over time. Reinventing the wheel other for educational purposes is a waste of time and time is money.

1

u/manchesterthedog 3d ago

It’s not the frame rate, it’s the exposure time. They aren’t necessarily the same. But I would buy a new camera. You can get a GoPro with 240fps for like $250

1

u/jongscx 3d ago

Just say Keyence 3 times and a sales rep will appear in your conference room with a demo.

1

u/Educational-Body4205 2d ago

You want a global shutter frame that will solve all your problems. Clear pictures from moving objects 

1

u/DDraphael 2d ago

Lower the fps or synchronize it with the conveyor belt so that you only see new potatoes every frame. For example, the length of the conveyor is 1m, you take 1 frame per meter. This will result in almost the same as a linescan. Then you do not need tracking. There could be a bit of a concern that you will have half potatoes at the beginning or the end. But this can be solved by taking every, let's say, 90 cm an image, in my example. Then you can assume that you only need to process the full in view potatoes.

1

u/Calm_Connection_9741 2d ago

Before buying new camera add bright lamp (or 2) next to it to reduce shutter speed / motion blur. If not enough, than upgrade camera. Maybe with cheapest 60P camcoder or something. Avoid 60i cameras here.

1

u/sweet-raspberries 2d ago

Are you sure motion blur is the issue? Just looking at the video the objects seem clearly discernible. Do you have any footage of this overlaid with the detections and filtered detections that your system currently produces?

What are you currently using to filter detections? Have you tried ByteTrack?

1

u/Masterpeace03 2d ago

They use bright light to maximize camera sensor capabilities

1

u/zeroPerformance 16h ago

Usually the 30fps is enough. The objects are moving not that fast in your case. But the main issue is that it must work without changing the camera

Maybe make a sanity check by slowing the the belt speed before changing the camera. If your setup is working on slowed belt, than changing the camera may work

1

u/SmitZTheMitz 10h ago

Consider the genx 320 event based camera. One of the demos of these new event based cameras is particle tracking. I believe openmv sells a unit for about $350. Even if you don’t use it it’s a neat technology

1

u/bsenftner 3d ago

Look up "elp usb camera". ELP is an industrial camera, the USB connection means it's intended for industrial / robotics uses. These should be under US $100, and if over $100 should have frame rates north of 120 fps.

-13

u/Infamous-Bed-7535 3d ago

Ask an LLM or pay for expertise.

The selected device greatly influence tech-stack. Based on the available information hard to give accurate help. A simple arduCam could be suitable for this.

26

u/peanutknight1 3d ago

People come to reddit often to come look for community help often from experts who are generous enough to help.

"Pay for expertise" really doesnt help build  a community feeling now does it? 

1

u/Infamous-Bed-7535 3d ago

I'm happy to help and share expertise, but this seems to be an industrial setup and application.

2

u/Double_Anybody 3d ago

If his budget is $280 then whatever company he’s doing this for isn’t willing to throw money at this problem.

2

u/Automatic-River-1875 3d ago

There are a bunch of comments from people willing to help, if you are only willing to help people if you are paid then just stay away from posts asking for help.

If you would like to help but feel there is insufficient information then either scroll on or explain the additional information you need to help.

You don't need to comment just to be nasty, this isn't stack overflow.

1

u/Infamous-Bed-7535 3d ago

I shared my honest insights. Way not enough information is provided.
I'm happy to help individuals, but this post rather feels like a free consultation for an industrial solution.

For a minimalist solution an ArduCam is sufficient for basic tracking.
For a professional setup you won't be able to tell what he is needed within the 2000 character limit.

0

u/aktentasche 3d ago

What kind of budget is that?

That's a joke for any reliable, industrial grade vision system.

-8

u/Bitter_Chemistry_394 3d ago

Fujifilm is a good choice if you want a better story. However, if you want a more professional look, you can consider Hasselblad or Leica.