{"id":1391,"date":"2025-09-18T09:00:00","date_gmt":"2025-09-18T09:00:00","guid":{"rendered":"https:\/\/cloudlab.urv.cat\/catedracloud\/?p=1391"},"modified":"2025-07-28T09:54:44","modified_gmt":"2025-07-28T09:54:44","slug":"streamsense-busqueda-semantica-inteligente-en-videos-de-streaming","status":"publish","type":"post","link":"https:\/\/cloudlab.urv.cat\/catedracloud\/2025\/09\/18\/streamsense-busqueda-semantica-inteligente-en-videos-de-streaming\/","title":{"rendered":"StreamSense: B\u00fasqueda Sem\u00e1ntica Inteligente en Videos de Streaming"},"content":{"rendered":"\n<p>En la era de la informaci\u00f3n digital, los contenidos multimedia se han convertido en una fuente masiva de datos. Con el crecimiento exponencial de plataformas de streaming, redes sociales y sistemas de videovigilancia, surge la necesidad de herramientas avanzadas que permitan buscar y analizar contenido de video de manera eficiente. En este articulo presentaremos <strong>StreamSense<\/strong>, una soluci\u00f3n innovadora presentada por el grupo de investigaci\u00f3n CloudLab de la URV, en colaboraci\u00f3n con DELL Technologies y el National Center for Tumor Diseases (NCT) de Dresden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfQu\u00e9 es StreamSense?<\/h2>\n\n\n\n<p>StreamSense es un sistema avanzado de b\u00fasqueda sem\u00e1ntica dise\u00f1ado espec\u00edficamente para sistemas de streaming de video. A diferencia de los m\u00e9todos tradicionales de b\u00fasqueda basados en metadatos o etiquetas manuales, StreamSense utiliza t\u00e9cnicas de inteligencia artificial y an\u00e1lisis de video para comprender el contenido visual y permitir b\u00fasquedas basadas en el significado sem\u00e1ntico de las escenas.<\/p>\n\n\n\n<p>Esta herramienta combina el poder del <strong>an\u00e1lisis de video en tiempo real<\/strong> con <strong>embeddings vectoriales<\/strong> y <strong>pol\u00edticas de b\u00fasqueda configurables<\/strong>, creando un ecosistema inteligente capaz de procesar y analizar grandes vol\u00famenes de contenido audiovisual de manera autom\u00e1tica y eficiente.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplos de casos de uso<\/h2>\n\n\n\n<p>StreamSense se ha dise\u00f1ado de forma agn\u00f3stica, lo que significa que puede adaptarse a una amplia variedad de aplicaciones. Algunos ejemplos de casos de uso incluyen:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cirug\u00edas robotizadas: En colaboraci\u00f3n con NCT, StreamSense se evalu\u00f3 en contexto de cirug\u00edas robotizadas, donde la b\u00fasqueda sem\u00e1ntica de eventos quir\u00fargicos espec\u00edficos puede mejorar la formaci\u00f3n y el an\u00e1lisis postoperatorio. Puedes ver un video de demostraci\u00f3n <a href=\"https:\/\/github.com\/neardata-eu\/video-stream-indexing\/raw\/refs\/heads\/main\/media\/demo.mp4\">aqu\u00ed<\/a>.<\/li>\n\n\n\n<li>An\u00e1lisis de c\u00e1maras de seguridad: En sistemas de videovigilancia, StreamSense permite a los operadores buscar eventos espec\u00edficos, mejorando significativamente la eficiencia y efectividad de las operaciones de seguridad. Puedes ver un video de demostraci\u00f3n <a href=\"https:\/\/github.com\/neardata-eu\/video-stream-indexing\/raw\/refs\/heads\/main\/media\/surveillance.mp4\">aqu\u00ed<\/a>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">La Tecnolog\u00eda Detr\u00e1s de StreamSense<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Arquitectura de Streaming<\/h3>\n\n\n\n<p>StreamSense est\u00e1 dise\u00f1ado con una arquitectura distribuida que puede escalar horizontalmente para manejar m\u00faltiples flujos de video simult\u00e1neamente. Utiliza tecnolog\u00edas de streaming como Pravega para garantizar la ingesta y procesamiento eficiente de datos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Modelos de Deep Learning<\/h3>\n\n\n\n<p>El sistema incorpora modelos de aprendizaje profundo especializados en visi\u00f3n por computadora para extraer caracter\u00edsticas sem\u00e1nticas de los frames de video.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Vector Databases<\/h3>\n\n\n\n<p>Para el almacenamiento y b\u00fasqueda eficiente de embeddings, StreamSense se integra con bases de datos vectoriales como las que hemos visto en<a href=\"https:\/\/cloudlab.urv.cat\/catedracloud\/tag\/vector-db\/\" data-type=\"post_tag\" data-id=\"86\"> posts anteriores,<\/a> aprovechando su capacidad para realizar b\u00fasquedas por similitud a gran escala.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Sistemas de Pol\u00edticas<\/h3>\n\n\n\n<p>El componente de pol\u00edticas utiliza lenguajes de consulta declarativos que permiten a los usuarios definir reglas complejas sin necesidad de programaci\u00f3n t\u00e9cnica.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplo de Funcionamiento<\/h2>\n\n\n\n<p>A continuaci\u00f3n, mostraremos un ejemplo de c\u00f3mo se utiliza StreamSense. El primer paso consiste en indexar todos los videos de los que queremos extraer informaci\u00f3n. Para ello, se utiliza el siguiente comando:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>FOR STREAM s USE EMBEDDINGS MODEL m INDEX SAMPLING i<\/code><\/pre>\n\n\n\n<p>En este comando, <code>s<\/code> es el nombre del stream de video, <code>m<\/code> es el modelo de embeddings utilizado para extraer caracter\u00edsticas sem\u00e1nticas, y <code>i<\/code> es la tasa de muestreo que determina con qu\u00e9 frecuencia se extraen frames del video.<\/p>\n\n\n\n<p>Una vez que los videos est\u00e1n indexados, podemos realizar b\u00fasquedas sem\u00e1nticas utilizando el siguiente comando:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>GET k STREAMS FROM f FRAMES x% LIKE &#091;IMAGE] USE EMBEDDINGS MODEL m<\/code><\/pre>\n\n\n\n<p>En este comando, <code>k<\/code> es el n\u00famero de streams que queremos recuperar, <code>f<\/code> es el n\u00famero de frames similares que buscaremos, <code>x%<\/code> es el porcentaje de similitud m\u00ednimo que queremos alcanzar, y <code>m<\/code> es el modelo de embeddings utilizado para comparar los frames.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n<\/h2>\n\n\n\n<p>En este post hemos visto las posibilidades que nos ofrece StreamSense, i algunos ejemplos de casos de uso. A medida que el volumen de contenido multimedia contin\u00faa creciendo exponencialmente, herramientas como StreamSense se vuelven esenciales para extraer conocimiento significativo de este oc\u00e9ano de informaci\u00f3n visual.<\/p>\n\n\n\n<p>StreamSense fue desarrollado en el marco de los proyectos europeos <a href=\"https:\/\/neardata.eu\/\" data-type=\"link\" data-id=\"https:\/\/neardata.eu\/\">NEARDATA<\/a> y <a href=\"https:\/\/cloudskin.eu\/\">CLOUDSKIN<\/a>. Fue presentado en la conferencia <a href=\"https:\/\/dl.acm.org\/doi\/10.1145\/3700824.3701097\">25th ACM\/IFIP International Middleware<\/a> y est\u00e1 disponible como c\u00f3digo abierto en <a href=\"https:\/\/github.com\/neardata-eu\/video-stream-indexing\">GitHub<\/a>. Puedes leer el art\u00edculo completo en Open Access en el <a href=\"https:\/\/hdl.handle.net\/20.500.11797\/imarina9441490\">repositori URV<\/a>.<\/p>\n\n\n\n<p>\u00bfTe imaginas las posibilidades que StreamSense podr\u00eda abrir en tu sector? \u00bfQu\u00e9 tipo de b\u00fasquedas sem\u00e1nticas ser\u00edan m\u00e1s valiosas para tu organizaci\u00f3n? \u00a1Comp\u00e1rtenos tus ideas en los comentarios!<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En la era de la informaci\u00f3n digital, los contenidos multimedia se han convertido en una fuente masiva de datos. Con el crecimiento exponencial de plataformas de streaming, redes sociales y sistemas de videovigilancia, surge la necesidad de herramientas avanzadas que permitan buscar y analizar contenido de video de manera eficiente. En este articulo presentaremos StreamSense, [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":1394,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","_swt_meta_header_display":false,"_swt_meta_footer_display":false,"_swt_meta_site_title_display":false,"_swt_meta_sticky_header":false,"_swt_meta_transparent_header":false,"footnotes":""},"categories":[113,39],"tags":[97,121,83,86],"class_list":["post-1391","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud-computing","category-ia","tag-cloud","tag-investigacion","tag-pravega","tag-vector-db"],"jetpack_featured_media_url":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/streamsense.png","uagb_featured_image_src":{"full":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/streamsense.png",1536,1024,false],"thumbnail":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/streamsense-150x150.png",150,150,true],"medium":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/streamsense-300x200.png",300,200,true],"medium_large":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/streamsense-768x512.png",768,512,true],"large":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/streamsense-1024x683.png",1024,683,true],"1536x1536":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/streamsense.png",1536,1024,false],"2048x2048":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/streamsense.png",1536,1024,false]},"uagb_author_info":{"display_name":"Gerard Finol Pe\u00f1alver","author_link":"https:\/\/cloudlab.urv.cat\/catedracloud\/author\/gfinol\/"},"uagb_comment_info":4,"uagb_excerpt":"En la era de la informaci\u00f3n digital, los contenidos multimedia se han convertido en una fuente masiva de datos. Con el crecimiento exponencial de plataformas de streaming, redes sociales y sistemas de videovigilancia, surge la necesidad de herramientas avanzadas que permitan buscar y analizar contenido de video de manera eficiente. En este articulo presentaremos StreamSense,&hellip;","_links":{"self":[{"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/posts\/1391","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/comments?post=1391"}],"version-history":[{"count":1,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/posts\/1391\/revisions"}],"predecessor-version":[{"id":1395,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/posts\/1391\/revisions\/1395"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/media\/1394"}],"wp:attachment":[{"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/media?parent=1391"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/categories?post=1391"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/tags?post=1391"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}