Image Recognition O...
 
Notifications
Clear all

Image Recognition Of A Date Coder Image.

22 Posts
6 Users
8 Likes
404 Views
frogandtoad
(@frogandtoad)
Noble Member
Joined: 3 years ago
Posts: 1476
 
Posted by: @leon

@frogandtoad 

I am sorry. I work for Banks Dih Limited located in Guyana who has the Coca-Cola Franchise. No big dollars. I am a Final year University Student.

Leon  

Well, you stated in your introductory post, the following:

    Posted by: @leon

    I am a student at the  University Of Guyana doing a BSc in Electrical Engineering. For my final year
    project, I must complete and present a working project, which I had already identified. After looking at
    the youtube video "Pixy2 Camera - Image Recognition for Arduino & Raspberry Pi", I was convinced that I
    need to be a part of this family. My line of work is maintaining a Coca Cola soft drink plant electrically.

    See you in my next post guys

    BRGDS.

    Leon

If you are maintaining a Coca Cola plant, then you are representing Coca Cola, even if you don't know it... they will likely sack you should they see these posts, exposing their IP and making them look like fools who can't solve a problem internally.

I acknowledge your good intentions, but you need to be careful of what you say online when working for such companies.  When I worked for large financial companies, they constantly told us (even via regular internal online training compliance modules), that anything we say publicly is a reflection on them, as you are their employee, and liable for what you say in public!

So be careful of what you say online 😉

Cheers


   
ReplyQuote
Leon
 Leon
(@leon)
Active Member
Joined: 4 months ago
Posts: 7
Topic starter  

@inq 

Thanks, Inq, that clarified the concept. The Question Why not use air at the Lens?

Air wouldn't be an excellent idea because the laser burnt the plastic to engrave the characters, giving off fume particles that are not healthy to breathe in. There is a vacuum pressure at the lens responsible for capturing the fumes and transporting it to a safe chamber.  using air between lens and container is not environmental friendly.

Leon


   
ReplyQuote
Inq
 Inq
(@inq)
Noble Member
Joined: 8 months ago
Posts: 959
 
Posted by: @robotbuilder

@inq 

I had the same thoughts but figured there must be  something about the process I didn't know about.

 

I don't mind asking the stupid question. 🤣 

I'm still not sure how his answer applies... if the laser/plastic process is off-gassing... blowing it doesn't make it worse.  You could always put a big suction on the other side and catch it, filter it... dispose of properly.  No reading necessary and far more reliable than a random reader that might not even have the text in the FoV.  

But, as I don't believe he will EVER find an "Arduino" solution without VERY SERIOUS HARDWARE knowledge and expenditures, significant software abilities and expenditures (if not in-house)... the chances are below zero (IMO).

There probably is an off-the-shelf (expensive) solution, but as he came here to get free help, I don't image that will be put into production.

 

3 lines of code = InqPortal = Complete IoT, App, Web Server w/ GUI Admin Client, Access Point Manager, Drag & Drop File Manager, OTA, Performance Metrics, Web Socket Comms, Easy App API, All running on ESP8266...
Even usable on ESP-01S - Quickest Start Guide


   
ReplyQuote
Will
 Will
(@will)
Noble Member
Joined: 1 year ago
Posts: 2112
 
 
Posted by: @inq
 
[snipt]

I'm still not sure how his answer applies... if the laser/plastic process is off-gassing... blowing it doesn't make it worse.  You could always put a big suction on the other side and catch it, filter it... dispose of properly.  No reading necessary and far more reliable than a random reader that might not even have the text in the FoV.

I interpreted the "vacuum" as a chamber intended to collect and dispose of the dust and fumes. Apparently it's not working. Your idea of introducing a jet of air could be created by adding a small tube to the laser near the lens which is connected to a tiny hole in the vacuum housing. That would create an ingress of air near the lens which would sweep the debris off it and help get all of the fumes and dust evacuated from the chamber.

Of course this idea "sucks", but it should work a lot better than trying to: initiate an image, capturing an image, processing the image, comparing to a theoretical image and then stopping the production line every 6667 clock cycles, which is the proposed alternative.

I was kidnapped by mimes.
They did unspeakable things to me.


   
ReplyQuote
Ron
 Ron
(@zander)
Famed Member
Joined: 2 years ago
Posts: 3403
 

@leon @inq @will @robotbuilder Gentlemen you are correct, to do what he wants takes some serious (read expensive) tech. I know somebody who made these kinds of systems, so I do have some background information. Unfortunately I have been out of touch for a while or I would ask him. The jet of air is the most likely inexpensive solution.

@leon stated the line runs at 2,400 bottles per minute or 40 bottles per second. That means you have 25ms to capture the image, process the image and act on the result. Let's assume acting is no measurable time, and you use the lowest resolution camera mode that takes 60 frames per second then you are left with only 8ms to process the image. If you can guarantee the image orientation then all you need is to compare each char of the date. Since there are 7 chars, each char must be able to be processed in a little more than 1ms. The image must be in raw format otherwise the jpeg processing time will swamp the calculation time. Since the resolution is 640 x 480 or 307,200 bits of data then a time of 4 nanoseconds per bit is needed. Those calculations are for a picture in perfect registration, in other words the bottle must be stopped, and oriented for the camera 40 times per second. Without registration marks surrounding each char or at least the entire field (MUST be fixed width font) it is impossible. If you can get registration so only one pass of image processing is needed then it may be possible given a fast enough processor. The ESP32CAM I use is 240mHz or 4.17ns clock. That sounds very close, but the 4ns is instruction time not clock time. If the entire code is a single op-code that uses only 1 clock cycle as many RISC architectures do, then it's close. BUT there is overhead, and 4.17 is > 4. If a faster processor exists say 1 gHz then maybe but I still doubt it and there are a lot of failure points. Contact an industrial artificial vision company to get a price estimate, this is not uncommon technology and the few tens of thousands of dollars is chup change to Coke.

One idea I had is to install a camera with the same field of view as the laser etcher mounted beside the laser and as the laser writes, the video camera compares the laser data feed to the video data feed. I have no idea how feasible that is, but it sounds a lot more doable than the long winded math exercise above.

Before a professional programmer writes any code, he first has to understand the application. You are a long way from starting let alone finishing step 1 of a 4 step process and the coding part is the least time.

Good luck!!!

"Don't tell people how to do things. Tell them what to do and let them surprise you with their results.” - G.S. Patton, Gen. USA
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon


   
Inq reacted
ReplyQuote
robotBuilder
(@robotbuilder)
Noble Member
Joined: 3 years ago
Posts: 1554
 

@zander

Looking at some utube examples of laser date stamping on plastic bottles (including Coca Cola bottles) I noticed a vacuum extraction setup. I also came across a video on how to clean the laser lens so that must be something they have to do. After reading your post @zander "One idea I had is to install a camera with the same field of view as the laser etcher mounted beside the laser and as the laser writes, the video camera compares the laser data feed to the video data feed." I came up with an idea for the automatic checking of how clean the laser lens was but I will leave that for @leon to figure out.

Super fast video capture is possible but I think they use a flash of light rather than a shutter system?

 


   
ReplyQuote
Ron
 Ron
(@zander)
Famed Member
Joined: 2 years ago
Posts: 3403
 

@robotbuilder Yes, the super slow motion cameras have no shutter. My brother used then to study all kinds of athletes but that was film, I assume now they are digital and may use a different method for fast capture. As several others have said and I think my back of the envelope proves, an arducam solution is out of the question, a video stream MIGHT work, but a flow of air across the lens just seems so obvious.

"Don't tell people how to do things. Tell them what to do and let them surprise you with their results.” - G.S. Patton, Gen. USA
"Never wrestle with a pig....the pig loves it and you end up covered in mud..." anon


   
ReplyQuote
Page 2 / 2