Next-Level Robotics: Unleashing ESP32CAM's Full Potential with OpenCV for Object Detection!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] hey robot makers hope you're having a good day so far so it's the last day of 2023 today and I thought we'd kick off the new year with a new show all about esp32 so let's get straight over to it I've lost my bearings already okay so yes today's show is going to be about the esp32 and how we can connect it up to a rasby pi using a rasb pi 5 in this case and how we can capture all that video and then do something interesting with it okay let's get to it shall we so yes this is going to use these very very cheap esp32 camera modules they're they're ridiculously cheap I'll show you just how cheap uh in a moment just from AliExpress is one of the places I bought a whole bunch of these from uh we're going to go through how to what the camera is what it can do connecting to the camera itself looking at the web interface that comes pre-loaded on it the tasmota uh software that typically gets installed on these we're going to have a look at the rstp rstp rtsp streaming how that works what we can do with that and how we can use that on another computer which is a really cool idea and then we're going to use CV Zone um open CV in a bit of a demo just to show you the kind of thing we can do with this so we'll have a bit of a a live demo and of course if you're here for the live stream we'll have a bit of a Q&A and uh talk about some of the cool things I've got in the mailbox as well cool let's get over to the main part to show then so what is this esp32 camera so it's an esp32 which is a popular micro controller that can run C++ it can run lure micropython uh it's quite a bit more powerful than rasby Pi Pico so this one has a dual core two 240 MHz processor this is the ESP 32s which is that sort of low power version um it has 520k of SRAM and this one has 4K of pseudo static Ram as well so that's for storage um and it also has a Micro SD card slot so you can put in extra storage um quite a bit of extra storage there to to store store whatever you want on their pictures and whatnot also has um 8 8021 BG and N networking protocols so it can do Wi-Fi and it of course it can also do um they just came up on my screen then I was like what's going on there uh it can also do Bluetooth as well so Bluetooth 4.2 not quite as fast as the 5.2 that the Raspberry Pi Paco could do but it does have blue um uh Bluetooth low energy as well and of course the main feature of this is the camera so it has an OV 2640 camera sensor which can go up to 2 megapixels that's not the best camera in the world but doesn't have to be for a lot of the purposes that we use these for in robotics which is typically just detecting objects avoiding them following them and so on so let's have a look at this a bit more depth so yes it can run at micropython however for our use case today this isn't the best solution so if for doing live streaming a video you best stick into the C++ application that tends to come loaded on these as part of the Tas motor or thinker AI firmware um I have done a previous show on how to actually load micropython and how to capture video but it's one or two frames per second it's very very slow and that's because micropython is interpreted rather than compiled so it does have 10 gpio pins uh so you can use them for whatever you like we'll have a look at those in a second and one of the cool things is is out of the box it can host its own Wi-Fi hotspot and you can connect to that to view the footage and the video and that's what we'll be doing today day uh on the uh the demo uh so it streams its own video to its own website you can make it so that it connects to your own local area network but actually for this purpose it's quite cool that it has its own hotspot we can use that uh to our advantage and built into the cameras firmware you can actually detect faces um and objects as well though it's very very poor frames per second and this is where we can offload that work to a much faster computer such as rasby Pi 5 and it can stream video via this real time streaming protocol rstp which we will use today so we typically use these on robots I've actually got a robot on my desk I can show you in a second which has um has a little remote control this little infrared remote control and this is an ad weo based robot uh this one we can actually use to um have a point of view camera on the front so we can actually see what the the robot can see so in this case I think you can you can basically just make it um tilt up and down so you use the robot itself to sort of move left and right but you can actually combine these together with a pan and tilt to do um a camera security camera that kind of thing so often use on these cheaper uino robots so I'm going to show you that now let me just get over now my cameras have moved around a little bit today so I just need to press the right button to get to the right camera so that's not the right one it's this one here so I've got this um little remote control here I've got this robot which is a I think a Wi-Fi car kit from lafin I think they're called and if I just move these um I think it's the two and the eight you can just see this little Wi-Fi um camera there the sp32 camera it's just sort of moving up and down on its little axis there there's a little Servo just next to it so that's quite useful if you want to have this um in the front of your robot there's another one which we will do a video on another date which is this uh this great big robot and this one also has I've actually not plugged it in properly yet but that one also has a esp32 camera at the front as well as a rangefinder so it's quite common that you see these on robots um for doing exactly that just give them a point of view camera so let's have a look at the module a bit more detail so uh runs off 3.3 volts CU it's a microcontroller you can put 5 volts into this as well it does get pretty hot when it's running when it's doing video um that's because it does take a lot of processing power it's pretty much maxing out the CPU crunching all that video for us and it can do um SDA it can do uh SPI it can do um the usual kind of gopo stuff as well as touch sensors so it has um a number of things it can be configured for essentially just uh detecting the resistance change of the pin so touch sense it also has an onboard um antenna connector so you can actually change this to be an external antenna that's robot car that I've got on my desk actually does have a antenna on it an external antenna so it can go a bit further and it also has a flash light on it as well so you can turn that on and off to indicate that this is sort of taking a picture and Illuminating the face or whatever um so let's let's see what else this thing can do so this is how we would connect this up typically then so we have the esp32 camera it has its own internal Wi-Fi server that it runs and it has a DHCP server on there as well which means anything that connects to it gets an IP address so it has its own IP address which is 192168 4.1 so when you connect to the uh the ESP um um Wi-Fi hotspot this is the Wi-Fi um this is the IP address that it has and you'll be given I think it's 192168 4.2 you can only connect one other computer to this at a time it only really supports one connection uh but it's enough for you to get to the web interface and to see the video footage so we'll have a look at this live in a second as well and what we will typically do as well I keep saying typically this episode for some reason what we will do in this case because this is having its own Wi-Fi hotspot if we have a Raspberry Pi for example um we want to connect to the esp32 camera using that Wi-Fi connection but we might also want to have a separate ethernet connection um through the the built-in ethernet port so we can do this this is called dual homing and it's quite typical if you do this um for rooting for example between one network and another so it enables us to have two network interfaces with two IP addresses on two uh different um local area networks or Wi-Fi networks you might use that for load balancing if you want to have um twice the bandwidth um you might want it for separate networks which is what we're using today and you can also use this as a separation kind of an air gap between your networks as a as a firewall so that's quite typical use for this kind of dual homing thing as well in our case we're going to use this to bridge the gap between our main computer and our esp32 camera so the Raspberry Pi is going to sort of sit in the middle connect to both of them and we can then do what we like with that video using some python so it's kind of a separation of Duties we're going to capture the video straight from the camera the camera is not going to do anything else we're not going to run micropython on the camera surprisingly we're going to leave that running uh the the firmware that it comes with and we're just going to capture the video using R STP um onto our rasby PI five in this case we can then use um python full-blown python with something like open CV to do some um computer vision and that means we can do detecting of faces hands all that kind of good stuff offloaded from the esp32 camera and that means we can all kinds of other possibilities open up then we can repurpose that video we can make it viewable on our home network do all kinds of other things with it as well detect um Intruders and things like that so the esp32 camera has a web interface of its own uh and you can notice on here if you can see it's a bit small but it has a face detection and face recognition at the very bottom of the uh the list of things that you can configure there so you can can change the resolution you can change the quality um the higher the resolution the higher the quality settings the slower the frames per second you will get on the camera so it depends what your use case is if you want really fast video a really low resolution is actually what you're after and it's not about the number of pixels if we're detecting faces and things often it's just about whereing that image is the thing that we're looking for and is that thing present or not present we can also adjust adjust things like the brightness the contrast the saturation you can apply a special effect like CP tone black and white and you can do some other things things as well like the auto white balance the auto white balance game where it basically brings up the the level of the um the video that's in there if you got a laptop and you do like Microsoft teams or Skype or Zoom you might often find that uh your video um sometimes looks really dark when you're in the room and it takes a while for it to sort of get back to like a regular looking picture and that's the auto white balance taking effect there you got some other things in there again gain ceilings you can just say how high should the gain go on there the gain is just like the signal Improvement um you got some other things like lend correction you can horizontally mirror it you can vertically flip it all that kind of good stuff as well so lots of cool settings that you can adjust on the camera just to get whatever you need from it so what is rtsp I think of RSVP when I see this so rstp is a real-time streaming protocol and it's designed for education education entertainment and communication systems to control streaming media servers so our camera is going to be a streaming media server in this case we can control the streaming media we can say pause the video rewind fast forward all that kind of commands can be sent using our tsp um but in our case we're basically just going to take a live feed so it's similar to http and how it works but instead of um web pages hypertext it's video uh being sent and commonly used in surveillance cameras and streaming services so that's what we're going to be using um out of the box luckily they've included this in the uh uh the camera's firmware so this is how simple it is to connect to this on another computer running python so we simply just put in the rtsp URL so in this case it's going to be that HTTP notice it's not got a certificate it's just unsecured 192168 4.1 and then Port 81 is the port that we will be capturing the video from and then forward SL stream is the the path to the video and then we can simply use the CV which is the open CV CV 2. video capture and then that URL that's all we need to do to capture the video it's as simple as that could be simpler and then we can just treat it like a local video resource like it's a camera that's built into our cam uh Raspberry Pi that means we can do all kinds of cool stuff once we've got that video captured so if you like what I do and you want to see more of these types of videos please consider giving this a like drop me a comment if let me know if you've got any sp32 camera or not and what you intend to do that and if you haven't subscribed to the channel already please consider subscribing it really does help the channel grow uh and makes me a happy person as well and I do go live every single Sunday at 7 o'clock um GMT I say go live there is a video that goes live every every Sunday might not always be me live streaming but there be certainly a video every Sunday as well and we do have a sponsor today which is PCB way so just got a quick message from them before we get on to the demo this video is sponsored by PC PB way your ultimate destination for all things PCB manufacturing and assembly whether you're a hobbyist a startup or a season professional PCB way has got you covered PCB way offers an impressive range of services they provide high quality customdesign printed circuit boards for any application you can imagine from single layer to multi-layer flexible and even rigid Flex pcbs they have the expertise to bring your designs to life PCB way ensures fast turnaround times and affordable prices without compromising on quality with their state-of-the-art facilities and Advanced manufacturing techniques they can handle small prototype orders up to large scale production runs with equal precision and efficiency PCB way offers additional value added services such as PCB assembly component sourcing and even functional testing you can trust them to deliver the fully assembled and tested boards ready for integration into your projects one of the best parts of pcbaa is a userfriendly online platform it allows you to easily upload your designs get instant quotes and track the progress of your orders in real time plus their dedicated customer support team are ready to assist you with any questions on concerns so whether you're working on an Innovative Internet of Things device a robotics project or anything in between PCB way is your go-to partner for Reliable and affordable PCB manufacturing and assembly head over to PCB way.com today and turn your ideas into reality with PCB way your trusted PCB manufacturing and assembly partner so thanks again for PCB way for sponsoring this video okay so I want to show you a couple of things first of all so I've got one of these uh esp32 cameras just here I just wanted to show you this on screen before we get into it so you can see it's quite a small module uh just got these um gopo on there it's not got too many on there you can see the Wi-Fi um looks like an ESP I turn it that way up you can see it so it's an ESP 32s it says on the chip there um and you can see on the other side there we have the camera these cameras typically are stuck to the uh the micro SD card reader which is just there on the top but on this particular one it isn't actually stuck on there a while ago I did create this uh Burger bot which has um a space for one of these to be connected in the idea is pretty much what we're going to be doing today we could control a robot by using the video and just connecting up some wires um on here to to power it because it just needs to have power we don't actually have to connect it up to the rest of the robotics because we control that from another robot from another location separately okay the other thing I wanted to show you as well was just how cheap these can be so let me just load up um AliExpress and let me show you over here just how cheap these are so you can buy a lot of these for practically nothing 65p uh to buy one of these with the motherboard which has the uh the USB connector on there as well without the motherboard you would have to have some kind of ftdi connector to program it uh but you can get the motherboard with these included for 65p it even costs more to ship one of them so why not buy 20 why not buy 10 why not buy whole load of these uh because you can do so many things with them so I just wanted to show you that before we get over to the demo okay so yes demo time looking forward to showing you guys this right so let me load up what I'm going to do I'm actually going to connect to uh my Raspberry Pi so I've got a Raspberry Pi over here on my desk um in fact if I go to that camera nope that camera there you can just see I've got a Raspberry Pi just down here uh it's just slightly out of view of the main camera there um but yes if I go over here I'm actually logged into the Raspberry Pi 5 using a uh capture card so I need to use a different keyboard and mouse and the video that we're seeing at the moment is from the esp32 camera so I want to of talk you through how we connect to it first of all so if I go over here to the Wi-Fi uh connection um you can see that the Wi-Fi um that available you can see my printer there a couple of my other networks and this esp32 camera MB I think that stands for motherboard um but that's the the Wi-Fi hotspot that we want to connect to and when we connect to that I just move out of here and just hover over that you'll see that we're on 192168 4.2 so that's the IP address that we're given and the actual esp32 camera is 1921 16641 if you just type that into a web browser I've done that over here on the uh the Raspberry Pi U I'm on the Raspberry Pi 5 here let me just show you just how quick this is at loading up so if I just go to the uh Chrome there and we just type in the 1921 168 for one boom there we are you can see that I've got this in the usual kind of spot my main camera is just there so this is kind of the usual shot that you see me on the live stream and you can see that the video quality of the camera isn't great uh but we've got it on 400 by 296 let's go for XGA you can see there the quality is better if I sort of stand stop moving for a second you can see it's okayish I've got some quite strong lights the studio lights on as well if I just turn them off for a second you can see there it's quite good at U you know the the darkish quality now we can also improve the quality of this as well or reduce it down that looks quite blocky there whereas that looks bit sharper and you can adjust all the uh brightnesses contrast and saturation and so on so you can make me look really really really overblown or we can just have that in the middle and there's a couple of effects as well so we can go for negative like some kind of Doctor Who effect let's go for that one that looks very strange got black teeth there uh we can go for CPS it looks like some all kind of allfashion thing and we can also just go back to no effect as well and it doesn't seem to slow down the video by doing these as well uh what else have we got so we got all the white balances we got the lens correction we've got the horizontal flip so if we do that it'll flip me over you can see on my welding team t-shirt there we can do a vertical flip that will flip me upside down or not and we've got things like a color bar as well let's just put that on like so so you can see there sort of overlaying a color bar right on top of the video now it does have face detection face recognition builtin as well um now it isn't great the uh the face detection that it's got I think it's quite slow frames per second and you can actually enroll a face as well which is pretty cool so if we go for face detection and let's switch that on it says we need to en enable a much lower resolution to use this feature so let's do exactly that I'm going to go back for that uh 400 by 296 seems to be a quickish one with a reasonable image you can actually see what's going on there so if we go now to face detection let's turn that on let see what happens now I found this last time it did it did just freeze I don't know if it needs to have a certain resolution for this to work but I also found that this didn't work either so I'm just going to turn that off for now and we can probably just restart maybe I just need to refresh the stream to see that work yeah so I'm back there again so I've been reading the specs and stuff online if I go to Port 81 on here slst stream we will get just the video I understand let's see if that actually does work on here it doesn't look like it's working actually see is uh this is still streaming there maybe we need to to cancel this you can only have one connection at a time and maybe that's what's happening there so I'm basically just going to copy that and I'm going to close that window but I'm also going to open up um GitHub in another window just because we might want to copy some other code in a minute so I've written some code that we can use as a basis for today's show we're actually going to type that out uh rather than just load it up so there's a face detection there's also a hand detection one you can see the quite small small programs so I'm now going to close that window just because we can only have one connection at a time and we're going to go over to a terminal and I'm simply just going to type in code oops on the right keyboard just grab this over here of course I've got my robot and my wires all tangled now so let's just disconnect that for a second oops just knocked the camera for a second I think there there we go right if I just plug this in here oops think I knocked the uh the cable off for a second okay so let's just get back over to there I think it didn't like me uh it's having a bit of a Feld day there isn't it right I'm just going to let that settle down for a second I think what happened there is the capture card just got knocked so if I just pull that out there we go right I'm just waiting for that to fire up I think it actually just knocked the power of the raspberry piie so I'm just going to power cycle that on and off as well just for good measure I just hold that down there I can see the video feed just in the bottom of the camera there so just in the bottom of the main screen there we go so that's off and then put that back on and we should be okay yes I can hear the the fan powering up momentarily right so if I just go over to there for a second here we go there we go this is Raspberry Pi now just firing back up okay so let's just uh yeah we're connected back onto the the wireless camera there and let's just start typing some code so the first thing we want to do then is create a new folder for our code to to live in so let's just do that so I'm going to do make directory and let's call this one demo let's go into our demo and then what we want to do is I used to do like a um git in it but in this case we're just going to do code and then dot so I've got Visual Studio code on this Raspberry Pi typing in code dot we'll load up this into our Raspberry Pi into our Visual Studio environment so the first thing I want to do is just create a new file I'm just going to call this one demo. py and it's just asking me where I want to store that actually let's let's do it over here instead actually it's probably easy if I just do demo. piy like so okay so now what we're want to do is we want to create a virtual environment for our python because there's a couple of things that we need to install to make this actually work so the way I'm going to do this if I just click on this terminal a new terminal uh it'll load up the folder that we're in down here and if I type in Python 3 and then- M and then venv venv this will create a virtual environment for us with um sort of a fresh install of Python 3 in there so we need to activate that now by doing source and then VMV type in that V EnV sorry I just done that wrong there so source VMV bin and activate typing on my knee here which is a bit awkward okay so what we're going to do now just move that error message out the way there just saying I've got a Docker installed do I want to do something which I don't know at the moment and what we want to do now then is uh we want to do pip install and we want to install three libraries so there's media pipe there is um CV Zone and then there's open cv- Python and I think I previously installed these so it's probably got a local copy that it's caching from you can see they're using cached copy it's quite quick to actually install these which is uh which is great so what I'm also going to do I'm just going to move there we go out the way okay so now that that's installed we can start typing our code out so the first thing we want to do is we want to import CV to which is open CV we also want to import CV Zone this makes things like hand detection face detection very very simple so from CV Zone we want to import um the face detection let's see if it picks up on that face detection and then module uh the other thing I'm going to do I'm going to click on this this uh thing down here and I can say I want to use this virtual environment which is this VMV bin. Python and that means that the uh auto complete will actually start working properly as well I'm then going to create a face detector so face detector and that's going to be equal to the face detection module so let's just do that uh do face detector like so and then we're going to bring in the rtsp Stream So let's do the rtsp uh URL and that's equal to and that's going to be http1 192168 4.1 and it's on Port 81 slam okay and then we want to capture the uh the video so we do cap and then we do CV2 do video capture video with a capital V capture there we go and then we just pass in that URL which is the RT a tsp one there we go and then we let's have a loop so while true and then what we will then do is we'll say um capture whether it's worked or not so we'll have a r and frame equals to cap. read this will read a frame from the camera and then if not R so if something's happened if it's not received it then we can say print um count reive frame something like that stream end there we go and then let's just do exiting and then at that point we'll break out of the loop so if if we have got a successful frame red then we can actually process that frame so we can say frame oops frame and list faces equals face detector do findind faces and then we pass in that frame that we've captured from the camera and then we can simply just put this into a um a window on the screen do using CV2 do image show IM show and then we tell it what we want to show so we want to have a little window that's called you know face detector something like that this is just on the title of the the window and we then just pass in that frame that we've uh just captured there and then we can have like um some kind of check to see has it been a key press or CV2 we key uh weight key one so if that equals Q or basically just converts um a text character into an ordinal value which is between what one and 255 something like that uh and in which case that will also break out of the the loop and once we've uh the loops ended we can just release all those um resources so let's just do cap. relase and we can I always think this one's like really dramatic now uh so this one is Cap dot so CV2 do destroy all windows which just sounds ulty dramatic that's it that's our code so let's run this and see what happens so it's hopefully going to connect to the camera it's going to load up a little window and it can't receive any video so let's just check that our camera is running properly so let's just Lo load up a um a window let's go to 4.1 yep that's working fine so let me just see what else is going on then so let's just quit that there and let me just check the URL so ah there we go that's why bit of a typo in there you probably spotted that one like what are you doing Kevin so let's now just run this again and hopefully we'll have a little window pop up and there we go so that's running face detection and you can see there the confidence level which is just above me now there is some other faces in the room so there's one around here that it that it finds there's another one there and I think there's another another head just behind me there so sometimes it detects those and sometimes it doesn't you can see the video image looks a little bit washed out compared to this sort of very very purple magenta looking uh box but look how quickly that sort of follow me about and that's because that none of this detection is happening on the esp32 camera this is all happening um on our Raspberry Pi 5 you can just see just how quick that is happening there and we can do more than that we can do things like hand detection as well so let me just uh load up my example on the other screen so I can just type this out it's only a few small changes we need to make to our code so let's go so if I close that window it will actually just pop up again because we haven't quit it so if we just press q that will actually end that program so to do hand detection we basically just add in a couple of extra things so instead of that face detection module we can just load up the uh hand tracking module and we can create like a hand tracker and that can be equal to the hand tracking module dot hand tracker I think it is and hand detector and then we can basically just say what the um detection con which is the confidence level threshold so ignore anything Ben beneath that not point8 and we can also say the maximum number of hands as well Max hands so we'll just say two just to make it a bit quicker the more hands you have it to try and detect the slower it it it becomes so everything else is the same um all that happens is down here where we have uh list faces uh we will also have um let's do instead of that one let's just comment that out so let's just do frame oops equals and then frame and list hands in this case list hands equals the hand tracker do find hands you can find the distance which is quite cool as well between the uh the hands uh and then we go frame so let's just run that oh instead of um face detector we can basically just say hand detector on the little popup and let's run this so if you now go to run oops there we go it should pop up another little window oops uh what would I type wrong there so is it the max hands let me just find that Max hands is too so want me to see what it says there Matt is not an Umpire either a scalar um so what's it not happy with in that so we should say frame on that let's bear with me one second so find hands hands hand tracker frame and list hands that looks good and the error is on line 22 which is that immature one isn't it so something's not quite right there so I'm just looking to see if there's anything else we need to do no that looks good hand tracker find hands that looks right so let me just try that again sometimes you do have to just run these a second time but if that doesn't work um there's probably a stupid bug in the code I've just written so what I have done over on um the repository for this code let's just go over to GitHub again so the repository is esp32 camera or camore rtsp rtsp Stream So if you go there you can actually grab this code so we can grab that handed detection code there we can just copy that we can paste that into here so let's just select everything right click and paste and if there's any bugs in there that should fix that if not there's probably a problem with one of the the modules that I've downloaded so yeah so that's not working I'm not sure what's going on there Matt is not an umpiring either a scale or don't know don't know what that is it's probably some issue with um I've had this before for with um just looking through that um with um with code that I've had working half an hour before so I'm just trying to get over to my main camera now and that's my stream deck seems to not be working [Music] properly right so I just want to go to the host camera and that seems to have forgotten where it is so just bear with me while I just do that so there we go let is go for that one for some reason this the host camera which is this one here has just forgotten that it exists so I'm not sure why that is so we just have to go with that one there it's the same thing so yes that's how we do uh face detection you could see that so what was happening just to repeat that again the camera itself isn't doing the face detection that's simply just streaming the video to a rasb pi uh P Raspberry Pi 5 the Raspberry Pi 5 is then running python python is then processing the images that it's capturing from an rtsp stream and it we just did some face detection as an example so what we could do with that we could get our robot that has one of these esp32 cameras on board and we could get it to track a face so it could basically say if the rectangle that we've drawn around my face is over here move the the robot so that it follows it so if my face goes over there it can it can track the face so we can get that by making the robot move left and right a little bit so I'm really looking forward to building out a um pan and tilt camera security camera that can do exactly this and follow around the room in a kind of sinister way I'll probably create some kind of big eye thing for that to go in so that's something that I'm looking at doing told you this was like a really simple uh piece of code to get up and running very very simple indeed okay so that's the process that's how we do this so if you want to learn more about python you want to learn more about robotics then you can head over to KZ robots.com learn and take one of the free courses today there's a whole bunch of courses on there um and I'm adding more all the time as well one of the new features I've recently added to keev robots as well it's not quite finished yet there's a search facility so you'll be able to search on there it does actually work with Safari but currently not with chrome and I'm not sure um the best way of approaching to fix that so I can show you that if I go over to um let me just see if I go over to here open up Safari uh so I've got keev robots over here if I say I'm looking for python hit search um let's see if that does actually work there yep sorry it's just loading there we go so it's finding the introduction to Python Programming python Basics um build a simple python application and so on or say you were looking for the ESP 32 you can type that it's going to connect to C robots and it's going to find there you got Express F esp32 so we've got one of the U um the board information pages on there you can see we've got the 8266 got the stem 32 aduino and so on uh so it's showing you those because they they have links to the esp32 so if we actually click on that link there it'll take us directly to the page now the reason I say that's not working properly at the moment is when you type in a search string that's being sent off to a Python program that's running in the background on one of the raspberry pies behind me and that's running a little web service that has an index of all the web pages on K robots.com that that it's it's scavenged I wrote a Python program to build a little search engine uh to index all the pages and then it's serving up all the results for the page which is pretty pretty cool so we can actually see what this looks like if I go over to here and we go to I don't know um search. kevs robots.com SL search and then question mark query and then let's just say um smars for example what we will get back uh do I need to do HTTP like that or I didn't do the port in there which is 8,000 so there we go so what we got back there is the results so this is what this web service is actually returning in the background it's just sending like a whole bunch of results from that little database that it's created of all the pages that exist on there so you've got like the results the URL um the cover image so we can have like a nice little image for them and then we have like the page title the description the author and the date as well so it's pretty cool that it can do all that kind of stuff now the other thing I wanted to show you as well on Kev robots.com is we now have an event page some interesting choices from teu there um so we have uh the events page you can download this as an IAL calendar so you can just click on here and it'll connect to your like uh Google Mail uh calendar or your IAL calendar and you can see that all these different events we've got PW Wars makeer Central EMF Camp open source Liverpool make Fest um the Sanjay Mortimer Foundation is that rip rat festival and the bers fair Rome as well so there're there and there's also this nice interactive map it's using open street maps I think it is and if you click on one of these you can also get a bit of information as well let's just zoom right in on those there we go so this is pretty neat so you can see that that's the Liverpool make aair so I'm just trying to click on it and it's uh it's not having it I think it thinks my mouse is being clicked I think is what's happening there uh but yeah if you click on those you'll uh you'll get a little popup telling you about the event itself so that's pretty neat I'll be adding more events to that um the more events that people tell me to add to it so if there's some um events you want me to add to that just let me know and we'll add them on there as well cool so that's a new feature on Kev robots.com I just wanted to share with you cool we do have merch if you want to get yourself one of these uh robot maker hats I have my other hats just here as well the red variety and we'll be very soon selling the maker notes notebooks as well so the these are Handmade by me uh to a very high standard they got these lovely round corners they look kind of similar to field notes but these have been designed for makers so each of the pages in here has like um very fine dots on them not sure if I can actually get you to see them if I you can just probably just about see some of the dots on there the cameras the the lights in the studio lights are kind of washing out a little bit there and there's also page numbers and a little area at the top for some kind of title so there's 48 pages so these will be going on SK on sale in packs of three and they come in a whole bunch of different colors I've got this lovely yellow color red colors green and there's also a blue as well which is the the one I was just showing there so got the blue so these will be available very very soon from uh maker notes which is the the website I'll be putting together on Shopify to sell some of those if you've not joined our Discord server you can pop over there and uh join the growing community people who are helping them helping each other Learn Python sharing their robotics projects I absolutely love seeing your projects over there so if you've got a project you've been working on over the uh holiday break uh pop a pitch on there in the the showand tell section let me know and I'll I'll go and have a look at that as well so you can go to KES robots.com Discord to get a sign up link for that completely free if you want to follow me on social media I all over social media so I'm on threads. net Kevin malalia I'm on Tik Tok Kevin Maier 6 I'm on Instagram at Kevin Mia I'm on X while it's still going at Kevin Ma kevm I'm on maedon at kevmac madono and I'm also on Blue Sky kevmac BL B Sky do excuse Meb sky. social as well so if you've not followed me on there say hi uh give me a follow it's nice to to see other makers as well and if you want to help the show financially there's a number of different ways that you can do this you can do a super thanks a super chat or you can join the YouTube membership program I'll just go over to the live streaming features over here and just make sure we've got all the uh the widgets and things enabled for that as well there we go and so yeah if you do a super Thanks that'll pop up um I always get Super Chat and super thanks mixed up I think Super thanks happens uh on the super thanks is on the replay Super Chat is on the live stream and you can also join the YouTube membership program as well just by clicking the Jo join button or if you want to go over to Kev robots.com coffee you can buy me a physical coffee as well I am a big coffee drinker okay as if you can't tell and we have a number of supporters I just want to give a quick shout out to uh so these are the people who bought coffees join the buy me a coffee membership program or join the YouTube membership program as well so Jason bought me a coffee very recently as did Roland bought r b a few actually G is as well as um and I pronounce this wrong every single week I'm so sorry so Assad DOI Assad adoli is that how you pronounce it and then there's two people who want to remain nameless who bought coffees as well and then members on the b a coffee membership we have Mary Louise mayor we have Jeff Johnson Dean Cy Marin Brent Tom shmy and Steve Phillips hey Steve and are you on the uh stream today as well as uh Mal and uh over on the YouTube membership side we've got alist we John Paul Jolly Cassie um we have Dale from Tinker from hybrid robotics we have tinkering rocks JDM Johnny Bates Bill H oxr 39 handsome cheer lights Michael and of course we have Tom as well our longest subscriber so if you want to join any of these you can go over to ke robots.com crits to get your name in the credits as well so yes I think that's everything I've got for you on the main part of the show today so why why does that button keep going wrong let me just go back over to uh the other one over here so I need to sort out this stream this is all because um let me find the host overlay button there we go this is all because because I added a new um camera capture card uh which is what I've got plugged into the rasby pi 5 and because of that it seems to have messed up the order of all the other cameras cuz it thinks it's replaced the the usual camera I don't know there's so many cameras in here I think I've got like four or five cameras at the same time going on there there's another one somewhere as well so there's the the sort of desk little camera I've got here is on like little pan and tilt there is the overhead camera which you can't see at the moment that's one of the ones that seems to be missing and there is also this studio camera which is of behind me as well so um number of different cameras on there too of course I can't get all those get rid of those now without pressing that button there there we go so that's uh this is the point in the video while I'll say thank you so much for watching and I shall see you next time
Info
Channel: Kevin McAleer
Views: 2,918
Rating: undefined out of 5
Keywords: raspberry pi 5, raspberry pi 5 projects, Raspberry Pi, Raspberry Pi 5, Python, OpenCV, CVZone, esp32cam projects, rstp, streaming, esp32cam face recognition, esp32cam, esp32, robotics, esp32 cam, esp32 camera, esp32 camera module, esp32 camera opencv, esp32 cam projects, opencv python, object detection opencv, esp32 cam opencv, object detection python code, tutorial, small robots, raspberry pi, pi 5, raspberry pi 5b, pi, raspberry pi projects, object detection opencv python
Id: DmWkxABZ69o
Channel Id: undefined
Length: 46min 14sec (2774 seconds)
Published: Mon Jan 01 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.