Esp-32 camera as object indication for waste segregation

Hi guys. We have a research goin on and we are planning to do an ai waste segregation system of bio or non biodegradable. What were still planning to do is use an esp32 camera and make the data set images on tensorflow. Then when done making the data set we can go input it in our arduino code. How does it sound? We are not really familiar of arduino yet but we know some basics of coding. Please help and give some advices. Newbie heree

What will be involved in making a data set of images? Why use two microcontrollers, will one not do? What will the Arduino be doing that the ESP32-CAM will not do? Show your plans.

2 Likes

Thats why i need recommendations, im still new to this but we are also very interested in this๐Ÿ™‚. Please share some tips. From what I heard, you have to make a data set and you will use that data set to train the ai on what are the images placed.

I recommend you continue reaearch until you have formed a plan, then follow that plan. It sounds like you have an assignment and are waiting for a handout. You do not want that. You want learning experiences

yes i have been researching and this is generally for us to learn robotics too. here is an overview of the plan
-We have 2 bins for the waste segregation (biodegradable and non bio). With the two bins we will have a servo motor sensor that will slide the material on what the item is but before that, we will have the esp 32 camera to detect wheter if its bio or non bio.

  • I will still train the camera with images using edge impulse and once the results are okay, I will connect it to the arduino and the servomotor
  • if Image is on the data biodegradable then slide it to bin a( for biodegradable)
  • if image is on the data non biodegradable then slide it to bin b( for non bio)
    this is a general plan and I want to see some recommendations, and question Do i still need an arduino uno board for the servomotor or no?

The ESP32-CAM can do object detection with EdgeImpulse and OpenCV. Search "ESP32CAM object detection"

Find how the Arduino can run servos, search "Arduino Servo"

Find how the ESP32 can run the servo, search "ESP32 Servo"

Both the search terms have many examples. Try them (all?). Modify them to your needs.

You can use both ESP32 and Arduino in your project, for their own tasks, or you might try to use the ESP32 for all tasks, as it is faster and "larger" (in memory) than Arduino.

1 Like

It's sounds like a solution that can be made to work well enough as a practical demonstration that's part of e.g. a thesis project. It'll work in a fairly controlled environment. Translated to a real-world, long-term solution, you'll be opening a whole new can of worms that'll bring you in the realm of industrial automation and machine vision systems. You'll leave the esp32 and the servo behind at this point, although that's still a fine first step to take.

There are quite a few ventures working on similar solutions - similar from the application side (waste segregation) and the technical side (machine vision for identifying stuff). Have you looked at how they solve these problems? You can clean a bit from their websites w.r.t. technological complexity etc.

1 Like

What do u mean by leaving the esp 32?

If you scale up to an industrial scale, you'll be using different equipment. Don't worry about that for now.

Yes we really are planning to pursue this but the Training the ai for the images might be very time consuming and complex. Do you have any recommendation for this?

Start small, with just a limited set of objects that need to be recognized. Other than that, I'd suggest to not look in the direction of Arduino for this part. Machine vision is kind of a universe in itself and I'm sure there are good forums and platforms for it. Hardware-wise, you're typically looking at either the powerful top-end of the Arduino ecosystem, or controllers/computers that far surpass it in terms of computing power. In terms of approaches, software etc. it's all much more 'high level' than the typical nuts & bolts / get-your-hands-dirty world of Arduino and embedded electronics. The latter is an OK starting point for the control systems (running the servo etc.), although in an industrial environment you typically use PLC's for this.

If you're serious about wanting to take this to an industrial scale, an Arduino-based approach is in my view at best a good initial exercise to come to grips with some fundamental aspects of the system. But once you've figured that out, you'd best served by contacting an engineering partner who can develop a production system (or prototype) based on your functional requirement, using industrially sensible building blocks and in a way that is robust enough for the kind of environment you're looking at. In all honesty, this is quite far removed from what we see in Arduino projects most of the time - although Arduino as such does try to move towards an industrial setting with their Controlluino and their PLC products (the latter doesn't seem to get much traction though).

1 Like

If you give an indication in the title of your post, what the particular subject or project is, you might attract the interest of someone who is knowledgeable in the same type of project.

1 Like

I see, Im still a student and yes this is actually for my thesis and this will gradually help me soon as a person who plans to go to these types of field. Im still unfamiliar with PLC and the only thing accesible is a servomotor, Im still researching on how to connect the camera detection to the servomotor. With this, I would really be open to some tips and suggestion once again.

OK, then let's distinguish between your thesis and your later career.
For your thesis, the Arduino-based/ESP32 approach will be just fine. It's likely also just fine if your system somewhat reliably recognizes the apple core, mango peel and coffee filter you use for testing, but doesn't work very well with random garbage (literally) being thrown at it. So there's considerable leeway; all you most likely need to do is offer a proof of concept.

For your later career, your thesis research will be useful because it gives you:
1: A very fundamental technical insight into how waste separation might be done. But this is actually a sideshow and not really what's going to make the difference in the real world - although it looks good (to employers, business partners etc.) if you demonstrate some basic awareness.
2: A general overview of the real-world statistics: insight into what constitutes real-world waste streams, what kind of volumes you're looking at, what the challenges are in waste stream separation (technical and organizational/societal; the latter is likely even more relevant in a thesis setting), what the costs and budgets involved are, etc.
3: A bit of an insight into the networks of actors relevant in your region; i.e. who does what from a government/public, business and societal perspective? In other words: how is the solid waste management system organized where you live, generally speaking?
4: Some methodological awareness of how to frame and tackle complex problems in a somewhat consistent and reliable manner, and (not in the least) awareness of the limitations of the knowledge you generate (hey, nothing is perfect, especially a thesis, and that's entirely fine, as long as the student understands what the strengths and weaknesses are).

My advice would be to get the technical proof of concept running with the least possible investment in time and money. If it (sort of) works, it's likely just fine. As shown above, the real gains in your project are elsewhere. Nobody is expecting you to come up with the technical architecture of a robust, practical waste separation system in your thesis project (well, they shouldn't be, and none of the supervisors I've worked with nor I myself ever expected anything of the sort from a student).

1 Like

I see I really appreciate this, Thank you so much.

Hope it helps in any way!
Please don't hesitate to ask more questions and/or proceed with this thread. Your initial questions about how to get an ESP32 to do machine vision and to control a servo remain relevant.