audiv027-2024-1

component.gallery

Designed to be a reference for anyone building component-based user interfaces, The Component Gallery is an up-to-date repository of interface components based on examples from the world of design systems.

CV: computer vision

rama que intenta entrenar al coputador para ver

como ejemplo de la empreabilidad de esto seria el traje que uso el actor de gollum, personaje que para ser creado necesitaba de sensores en el cuerpo que el computador reconoce para reemplazar

image

CLMTRACKER: Javascript library for precise tracking of facial features via Constrained Local Models

image

el computador intenta reconocer las dos pupilas de la cara para identificar una cara humana

como ejemplo de la pagina encontramos un buscador de caras:

image

que por cierto puede identificar caras en cosas que no necesariamente la tengan

esta biblioteca permite tambien una version dinamica, que es la siguiente:

image

*asincrono: si pasa algo, que pase lo siguiente

mediapipe: On-device machine learning for everyone, facil de usar, innovador y rapido

permite que la inteligencia artificial pase dentro del dispositivo

los ejemplos ![image](https://github.com/sofiachaav/audiv027-2024-1/assets/129554344/9838b142-fc95-405d-8ced-86bcd21745b5

ejercicio

INDEX.HTML

image

https://github.com/TetsuakiBaba/p5MediaPipe/blob/82c2578aa1d5d406ba8639869654593a0cb19f28/object-detection/index.html#L29C3-L31C12

image

SCRIPT.JS

image

SCKETCH.JS

Estas lineas tienen la funcion de crear el cuadro anaranjado que contornea el objeto y pone el nombre respectivamente:

function draw() { clear(); if (results) { for (let detection of results.detections) { let index = detection.categories[0].index; let bb = detection.boundingBox; let name = detection.categories[0].categoryName; let score = detection.categories[0].score; let c = getColorByIndex(index); c = […c, 200]; stroke(c); strokeWeight(2); noFill(); rect( bb.originX, bb.originY, bb.width, bb.height ) fill(c); rect( bb.originX, bb.originY - 20, bb.width, 20 )

        noStroke();
        fill(255);
        textAlign(LEFT, CENTER);
        text(`[${index}] ${name} - ${score.toFixed(2)}`, bb.originX + 10, bb.originY - 10);
        index++;
    }

image

Esta linea de codigo estaba destinada a ajustar el ancho y el largo del ienzo de la camara dependiendo del objeto, pero esta incompleta o en desuso:

function adjustCanvas() { // Get an element by its ID var element_webcam = document.getElementById(‘webcam’); resizeCanvas(element_webcam.clientWidth, element_webcam.clientHeight); //console.log(element_webcam.clientWidth); }

Esta linea de codigo nos comenta los colores que puede detectar la camara:

function getColorByIndex(index) { const colors = [ [240, 128, 128], // ライトコーラル [173, 216, 230], // ライトブルー [144, 238, 144], // ライトグリーン [220, 220, 220], // グレイ [244, 164, 96], // ライトサーモン [192, 192, 192], // シルバー [255, 222, 173], // ナバホホワイト [175, 238, 238], // パオダーターコイズ [255, 228, 196], // ビスク [221, 160, 221], // プラム [250, 128, 114], // サーモン [152, 251, 152], // パレグリーン [176, 224, 230], // パウダーブルー [255, 218, 185], // ピーチパフ [240, 230, 140], // カーキ [240, 128, 128], // ライトコーラル [144, 238, 144], // ライトグリーン [192, 192, 192], // シルバー [255, 228, 196], // ビスク [250, 128, 114] // サーモン ];

la traduccion seria:

función getColorByIndex(índice) { colores constantes = [ [240, 128, 128], // coral claro [173, 216, 230], // azul claro [144, 238, 144], // verde claro [220, 220, 220], // gris [244, 164, 96], // salmón claro [192, 192, 192], // Plata [255, 222, 173], // Navajo Blanco [175, 238, 238], // Paodar Turquesa [255, 228, 196], // sopa [221, 160, 221], // ciruela [250, 128, 114], // salmón [152, 251, 152], // Palacio Verde [176, 224, 230], // azul pálido [255, 218, 185], // hojaldre de melocotón [240, 230, 140], // caqui [240, 128, 128], // coral claro [144, 238, 144], // verde claro [192, 192, 192], // Plata [255, 228, 196], // sopa [250, 128, 114] // Salmón ];