1 points par GN⁺ 2024-06-24 | 1 commentaires | Partager sur WhatsApp

Arrêtons le lèche-vitrine et commençons le shopping par la fenêtre !

Comment faire du dropping avec l’IA

  • Objectif : exploiter un service qui utilise l’IA pour faire tomber des chapeaux par la fenêtre et les offrir aux habitants de New York.
  • Éléments nécessaires : Raspberry Pi, moteur pas à pas Adafruit, ficelle, IA Roboflow, produit léger (par ex. un chapeau à hélice).

Ouvrir la fenêtre

  • Problème : la fenêtre ne s’ouvrait que d’environ 4 pouces.
  • Solution : résoudre le problème en cherchant sur Google la clé adaptée à cette fenêtre.

Choix du chapeau

  • Conditions : un chapeau qui ne blesse personne en tombant et ne gêne pas la circulation.
  • Choix : un chapeau à hélice, symbole du futur et qui tombe avec élégance.

Mécanisme de largage

  • Configuration : utilisation d’un Raspberry Pi et d’un moteur pas à pas.
  • Méthode : enrouler une ficelle autour du moteur pas à pas pour le faire avancer petit à petit.
  • Code : code de largage écrit dans un fichier Python.
import time
import board
import digitalio

enable_pin = digitalio.DigitalInOut(board.D18)
coil_A_1_pin = digitalio.DigitalInOut(board.D4)
coil_A_2_pin = digitalio.DigitalInOut(board.D17)
coil_B_1_pin = digitalio.DigitalInOut(board.D23)
coil_B_2_pin = digitalio.DigitalInOut(board.D24)

enable_pin.direction = digitalio.Direction.OUTPUT
coil_A_1_pin.direction = digitalio.Direction.OUTPUT
coil_A_2_pin.direction = digitalio.Direction.OUTPUT
coil_B_1_pin.direction = digitalio.Direction.OUTPUT
coil_B_2_pin.direction = digitalio.Direction.OUTPUT

enable_pin.value = True

def forward(delay, steps):
    i = 0
    while i in range(0, steps):
        setStep(1, 0, 1, 0)
        time.sleep(delay)
        setStep(0, 1, 1, 0)
        time.sleep(delay)
        setStep(0, 1, 0, 1)
        time.sleep(delay)
        setStep(1, 0, 0, 1)
        time.sleep(delay)
        i += 1

def setStep(w1, w2, w3, w4):
    coil_A_1_pin.value = w1
    coil_A_2_pin.value = w2
    coil_B_1_pin.value = w3
    coil_B_2_pin.value = w4

forward(5, int(512))

IA

  • Objectif : détecter en temps réel s’il y a une personne sous la fenêtre.
  • Méthode : analyser en temps réel le flux vidéo d’une webcam et vérifier si une personne se trouve dans une zone précise.
  • Modèle : création d’un modèle de détection d’objets avec Roboflow.
  • Code : code de détection et de largage écrit dans un fichier Python.
import cv2
import time
import paramiko
from inference_sdk import InferenceHTTPClient

CLIENT = InferenceHTTPClient(api_url="https://detect.roboflow.com";, api_key="API_KEY")

def ssh_execute(host, port, username, password, command):
    client = paramiko.SSHClient()
    client.load_system_host_keys()
    client.set_missing_host_key_policy(paramiko.WarningPolicy)
    try:
        client.connect(host, port=port, username=username, password=password)
        stdin, stdout, stderr = client.exec_command(command)
        print(stdout.read().decode().strip())
        if stderr.read().decode().strip():
            print('Error:', stderr)
    finally:
        client.close()

video = cv2.VideoCapture(0)
consec_detections = 0

while True:
    ret, frame = video.read()
    result = CLIENT.infer(frame, model_id="drop-of-a-a-hat/2")
    if 'predictions' in result and len(result['predictions']) > 0:
        consec_detections += 1
    else:
        consec_detections = 0
    if consec_detections >= 3:
        ssh_execute('raspberry.local', 22, 'pi', 'raspberry', 'python3 dropHat.py')
        consec_detections = 0
    time.sleep(1)

La vision tant attendue

  • Vision : un monde où, en se promenant dans New York, tout ce dont on a besoin tombe des fenêtres.
  • Objectif : s’imposer comme le premier exemple de « Window Shopping ».

L’avis de GN⁺

  • Point intéressant : propose un modèle économique créatif en combinant IA et IoT.
  • Points à considérer pour l’adoption : il faut examiner suffisamment en amont la structure des fenêtres et les questions de sécurité.
  • Défi technique : la précision du modèle d’IA et les performances de traitement en temps réel sont essentielles.
  • Projet similaire : possibilité d’extension vers un concept proche des services de livraison par drone.
  • Impact social : peut accroître le confort de la vie urbaine tout en créant une nouvelle forme de commerce.

1 commentaires

 
GN⁺ 2024-06-24
Commentaires Hacker News
  • IA utile : La chose la plus utile que j’aie vue sur Internet depuis longtemps. Merci pour cet excellent travail.
  • Chute du chapeau : Je ne comprends pas comment le chapeau tombe en ligne droite malgré les hélices et le vent.
  • J’adore le projet : J’adore ce genre de projet. Plusieurs États poussent actuellement des projets de loi pour exiger un filigrane sur les contenus générés par IA.
  • Mauvais usage : Utiliser autre chose qu’un chapeau pourrait être mortel.
  • Publication étonnamment géniale : Au début, je pensais que ce serait banal, mais c’était vraiment intéressant. L’auteur semble avoir surmonté de nombreux défis et donné l’impression que c’était facile à résoudre.
  • Détection d’objets vidéo : Je me demande pourquoi utiliser le SaaS de Roboflow. On dirait que le Pi manque de puissance pour faire tourner des solutions on-device comme Frigate ou DOODS.
  • Idée de webcam : L’idée d’une webcam qui lance des colliers lors d’une fête depuis un balcon de Bourbon St à La Nouvelle-Orléans est géniale. Les personnes intéressées peuvent laisser leurs coordonnées.
  • Opportunité d’investissement : J’aurais aimé participer à cette opportunité d’investissement, mais il semble que j’arrive trop tard.
  • Trouver le commerce voisin : Parfois, j’ai envie de chewing-gum dans la rue. En résumé, cela utilise un produit léger, un Raspberry Pi, un moteur pas à pas Adafruit, du fil et Roboflow.
  • Fausse vidéo : Il y a un clip vidéo où le chapeau disparaît puis réapparaît au moment où il tombe.