#Coding4Fun – How to control your #drone with 20 lines of code! (15/N)

Buy Me A Coffee

Hi !

Let’s use Custom Vision to analyze the images from our drone camera. In this scenario, I created a custom model to recognize MVP awards from my MVP wall. I know, that’s bragging, but I like it.

Disclaimer: There are plenty of documentation and tutorials about Custom Vision. I won’t go deep on the steps about how to create a model. See references.

For my next scenario, I would assume that

  • You have created a model in Custom Vision
  • You have published the Custom Vision model, and have a HTTP endpoint
  • Or the model is exported as a docker image, and it’s running in a docker container. And we have a HTTP endpoint.

The code is similar to the one we used before. OpenCV to hookup the camera, commands to take off and land. Let me remark a couple of important lines in this code:

  • There are a couple of new references, mostly used for the process of the JSON response from the Custom Vision model.
  • Lines 146-155. Get the frame from the drone camera and save a local file. Apply a specific format to the file name, for demo purposes.
  • Lines 157-163. Make a HTTP POST call to analyze the saved file. Convert the result to a JSON object (room for improvement here), and analyze the JSON response.
  • Lines 70-85. Analyzed the JSON response from the Custom Vision model. Sort the results by probability and filter the results using a threshold (75). Return a string with the detected object.
  • Lines 165-178. Calculate and display FPS and detected objects.

A sample JSON return string start like this one:

{
  "created": "2020-04-08T17:22:02.179359",
  "id": "",
  "iteration": "",
  "predictions": [
    {
      "boundingBox": {
        "height": 0.1979116,
        "left": 0.3235259,
        "top": 0.05847502,
        "width": 0.20438321
      },
      "probability": 0.89171505,
      "tagId": 0,
      "tagName": "MVP"
    },
    {
      "boundingBox": {
        "height": 0.2091526,
        "left": 0.65271178,
        "top": 0.0433814,
        "width": 0.17669522
      },
      "probability": 0.70330358,
      "tagId": 0,
      "tagName": "MVP"
    },

So let’s go to the full code:

And if you want to see this up and running, it’s much better to see this in a video (start at ):

The complete source code can be found here https://github.com/elbruno/events/tree/master/2020%2004%2018%20Global%20AI%20On%20Tour%20MTY%20Drone%20AI%20Mex

Happy coding!

Greetings

El Bruno

References

#Event – #GlobalAzure Virtual 2020, Panel de Expertos en AI ! live from Spain in Spanish :D

Buy Me A Coffee

Buenas !

Como parte del Global Azure Virtual, el próximo viernes 24 en tu hora local, tengo la suerte de participar en un panel de expertos de Inteligencia Artificial hablando sobre variedad de temas de AI. Tengo la suerte de compartir podio con:

Elena Salcedo

Software Developer @ Intelequia | MVP AI

Me divierto programando bots, trabajo montando Legos. Algún día mis bots montarán Legos.

Rodrigo Cabello

AI Team Lead at Plain Concepts and MVP in Artificial Intelligence

AI Team Lead and AI MVP at Plain Concepts (Madrid), with an experience of more than 9 years in the development of web applications. He is enthusiastic about new technologies and apps that use techniques based on Artificial Intelligence.

David Rodriguez

CTO at Intelequia Software Solutions, Microsoft Regional Director and Azure MVP

I’m David Rodriguez, a Spanish Microsoft Regional Director and Azure Microsoft Most Valuable Professional, living in Tenerife, Canary Islands. On 2011, I co-founded Intelequia Software Solutions, a company focused on helping customers to adopt the cloud model, as well as the TenerifeDev user group.

Y la sesión será una gran conversación

¿Conoces los principales beneficios del IoT y la Inteligencia Artificial? En esta sesión hablaremos de cómo hacer que nuestros dispositivos de IoT sean más inteligentes con la IA y cómo podemos lograrlo implementando diferentes tecnologías de Microsoft y proyectos de código abierto. Tendremos una charla honesta sobre los proyectos de vanguardia en los que estamos trabajando ahora mismo, incluyendo casos reales como la automatización del hogar y la industria, y cómo están siendo aceptados por las personas que interactúan con ellos.

Panel de Expertos de AI

Mas información de la sesión en https://virtual.globalazure.net/sessions/198313

Y el listado completo de sesiones del evento https://virtual.globalazure.net

Happy coding!

Greetings

El Bruno

#Event – Recorded session (spanish) and resources for the #GlobalAICommunity Virtual Tour, Monterrey. Vamos a programar a un dron para que siga rostros!

Buy Me A Coffee
Globa AI Community on Virtual Tour Logo

Hi !

The event is complete, and now is time to share the recorded session and the resources I used during the session

Recorded Session (Spanish)

Slides

Code

https://github.com/elbruno/events/tree/master/2020%2004%2018%20Global%20AI%20On%20Tour%20MTY%20Drone%20AI%20Mex

Resources

Happy coding!

Greetings

El Bruno

#Podcast – NTN 48 – Accesibilidad en general y para programadores con Juanjo @kastwey y Juan Carlos @jc_quijano

Buy Me A Coffee

Buenas!

Hoy tengo la suerte de hablar con JuanJo Montiel (@kastwey) y Juan Quijano (@jc_quijano) sobre accesibilidad en general. Y con un sabor especial para programadores o apasionados de la tecnología, ya que JuanJo es invidente y nos comenta sus experiencias en el día a día, y también su experiencia como programador.

Si alguno se pregunta cómo funcionan las aplicaciones que conocemos y utilizamos todos los días, sin un monitor, espero que estos +30 minutos te ayuden a ver las cosas de forma diferente.

JuanJo es Senior Developer y responsable de Accesibilidad en Pasiona Consulting. Juan es Microsoft Certified Trainer, Arquitecto de Soluciones en Azure y Consultor independiente en implantación de DevOps.

Ir a descargar

Recursos

Happy coding!

Greetings

El Bruno

#Windows10 – How to Install Connect app (yes, somehow is not part of my Windows 10 installation)

Buy Me A Coffee

Hi!

I’ve been using the Connect App for several years. It’s super useful when you need to share your Android screen to your Windows device, or any other device sharing screen scenario.

However, today I realized that I don’t have my Connect app installed in my Windows 10

no connect app

I don’t know why, maybe one of the Insider Builds remove the App, or any other crazy ideas. Moving on, I put my focus to figure out how to install this app. I really need it!

There is not much information about how to install this, but I found that I had the [Projecting to this PC] feature in Windows 10. Which was disabled for me.

windows 10 settings projecting to this pc

Now it’s time to add this, in the Optional Features section in Settings.

Browsing the optional features, I found [Wireless Display]. That should be the one:

windows 10 add wireless display feature to w10

Warning, after the install time, is also REBOOT time! Windows being Windows.

windows 10 installing wireless display

And, now I had the connect App up and running to rock some Hololens demos

windows 10 connect app as new app

Happy coding!

Greetings @ Toronto

El Bruno

References

Microsoft Cognitive Services at the Edge

As AI Developers we understand the power that the Cognitive Services provide. The facility to build intelligent and supported algorithms into apps, websites, and bots to see, hear, speak, understand, and interpret your user needs. The APIs in Cognitive Services are hosted on a growing network of Microsoft-managed data centers.

We need to start thinking on new scenarios that were simply not possible before. Smart sensors, connected devices are becoming a trend towards a future powered by the intelligent cloud and intelligent edge. We can think of the intelligent edge as a continually expanding set of connected systems and devices that gather and analyze information close to the physical world where data resides, to deliver real-time insights and immersive experiences that are highly responsive and contextually aware. At the edge, the application is contextually aware and can run in both connected and disconnected states.

Microsoft announced last year, the preview…

View original post 727 more words

#Teams – How to add your custom background (not official and at your own risk!)

Buy Me A Coffee

Hi !

If you are a Microsoft Teams user, you are probably happy. We are getting the amazing feature which allows us to change our background. The feature uses AI to detect our body and head, and change everything else by a custom background. So cool !

However, in the current release of the feature, you can only choose between a set of +15 backgrounds. I mean, some of them are very cool, but I want my own. I want to have something like this.

this is fine teams background

Again, this is not official, but still is fun to try. Let’s go with the steps.

  • 1st open a explorer and access to the path
 %AppData%\Microsoft\Teams\Backgrounds\Uploads folder

In my Windows 10 computer this is

C:\Users\bruno\AppData\Roaming\Microsoft\Teams\Backgrounds\Uploads
  • In that location, paste your desired custom background. I haven’t tested formats and images, but a small (less than 1MB) JPG image seems to work fine.
  • Now it’s time to work in Microsoft Teams
  • Once you are in a meeting, access to the options, and then select [Show background effects]
teams meetings options
  • At this time, you will see your custom image / background and you can start to use it!

So, I’m guessing that the [upload your custom background] will be available soon. In the meantime, you got the hack!

Happy coding!

Greetings

El Bruno

#Event – #GlobalAICommunity More Drones and AI, pero esta vez en español ! el 18 de Abril para Global AI On Tour MTY

Buy Me A Coffee
Globa AI Community on Virtual Tour Logo

Hola !

Ya estaba por guardar el dron, eliminar los recursos de Azure y pintar mi oficina, cuando tuve que poner esto en pausa por un excelente motivo.

El próximo 18 de Abril estará hablando de drones, Inteligencia Artificial, Docker, y otras sorpresas para el evento gratuito de Global AI On Tour Monterrey !

Global AI OnTour Monterrey !

Y no soy solo yo, el evento transcurre durante 8 días con sesiones diarias sobre AI, que tocan temas como Azure Cognitive Services, Azure BlockChain, Redes Neuronales, IoT, Alexa Skills y mucho más !

Dadle un vistazo a la Agenda y no dudes en registrarte.

Los espero virtualmente!

Happy coding!

Greetings

El Bruno