Image Recognition O...
 
Notifications
Clear all

Image Recognition Of A Date Coder Image.

23 Posts
7 Users
8 Reactions
2,511 Views
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
 
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)
Member
Joined: 2 years 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)
Member
Joined: 3 years ago
Posts: 1904
 
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, WiFi 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)
Member
Joined: 3 years ago
Posts: 2574
 
 
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.

Anything seems possible when you don't know what you're talking about.


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 4 years ago
Posts: 7666
 

@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!!!

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.


   
Inq reacted
ReplyQuote
robotBuilder
(@robotbuilder)
Member
Joined: 5 years ago
Posts: 2221
 

@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)
Father of a miniature Wookie
Joined: 4 years ago
Posts: 7666
 

@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.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.


   
ReplyQuote
(@maxli)
Member
Joined: 4 years ago
Posts: 36
 

@inq实际上,我也认为定期清洁是一种好方法。


   
ReplyQuote
Page 2 / 2