一种基于图片搜索视频的方案

一种,基于,图片,搜索,视频,方案 · 浏览次数 : 770

小编点评

**文章概述:** 文章介绍了两种视频搜索的实现方案:文本搜索和拍照搜索。 **1. 文本搜索** * 文本搜索应用广泛,使用关键字匹配对商品信息进行搜索。 * 语义搜索通过用户输入的搜索内容来理解用户意图,获得更有价值的内容。 **2. 拍照搜索** * 拍照搜索以图搜图的方式实现,用户通过上传图片,通过图像分析和识别找到相似的商品。 * 需要商品发布人员制作合规的图片,美工设计人员参与,增加人力成本。 **3. 技术方案** **3.1 方案3.1** * 对商品描述进行分类,筛选出与视频内容相似的商品片段。 * 流程图流程图,清晰地描述视频制作过程。 * 详细描述关键帧,提高视频搜索的精度。 **3.2 方案3.2.1** * 流程图,详细描述视频关键帧提取过程。 * VGG16模型计算特征向量,进行类目维度切割。 **4. 视频搜索买家** * 买家选择要搜索的类目再进行图片上传。 * VGG16模型计算特征向量,进行类目维度切割。 * 基于特征向量与文件的关系,查找视频文件。 **5. 视频淘汰策略** * 定期进行视频搜索买家的巡检,删除长时间没有流量或流量低于阈值的商品。 * 减少搜索的体积,减少计算资源的浪费。

正文

作者:京东零售 谷伟

1.商品搜索

1.1网络购物的搜索手段

随着移动互联网发展,手机端购物已成为人们生活的常态。人们在搜索商品时采用的手段也越来越丰富,当前的主要搜索方式是文本搜索与拍照搜索。

1.2文本搜索

文本搜索应用比较广泛,较为常用的是关键字匹配,针对商品信息的相关描述进行分词,并对分词建立索引库,从而达到查找的目的。随着人工智能的发展,语义搜索得到了快速的发展,它通过用户输入的搜索内容来理解用户真正的意图,从而获得更有价值的内容。其本质是将所有要搜索的内容转化为高维数学向量,用统一的特征向量来描述不同内容,把检索输入的内容向量化,并与要搜索的内容进行向量匹配,把相似度最高的结果展现出来。

1.3拍照搜索

拍照搜索也就是以图搜图,是近几年的视觉AI发展的一个产物。用户登录电商平台,可以通过上传图片,经过图像分析与识别来查找相似的商品主图,从而找出相关的商品。其基本原理是经图像分析抽取图像的颜色、形状、纹理等特征,建立特征索引库,对用户上传的图像进行特征化描述,从索引库中查找出与之近似的特征图像。

2. 现状分析

2.1需要专业人员参与

文本搜索需要文本描述的支持,也就是需要对短视频进行文本描述,需要人员对短视频进行准确的文本描述,尤其描述中要含有代表其商品的关键词,否则可能难以被搜索引擎所命中,这对视频的发布人员产生了一定的门槛,增加搜索命中的难度。

拍照搜索主要是对商品的主图进行特征匹配,这也就需要商品发布人员要制作尽可能与之匹配的图片,尤其需要美工设计人员的参与,从而增加了人力成本。

2.2难以支持短视频搜索

随着近几年自媒体的发展,短视频逐渐成为互联网信息传播的主要手段。而短视频可以认为是大量图片的集合,不可能对短视频的每张图片建立特征索引,因为这会浪费大量的计算机算力。

3. 技术方案

3.1 技术问题

以前商品介绍主要以图文方式来展现商品,不仅要展示商品主图还要配细节图,以及产品参数,从而达到全面涵盖产品信息的能力。而短视频能够全方位的展示商品,并搭配语言描述以及背景音乐,可进一步形象的给消费者介绍商品的功能,给顾客更直观的体验,有助于促进下单。同时商家制作的短视频可将其推送到自媒体平台上,便于给商品引流,提高商品销量,从而拓宽了销售市场。

因此短视频营销相对于图文营销更有优势,如何让顾客能够更快更便捷地搜索到其感兴趣的商品短视频,是本发明所要解决的主要问题。本方案主要解决的是商品短视频搜索,按照类目维度对商品短视频进行筛选,并提高视频搜索的命中率,为商品短视频搜索建立桥梁。

3.2 技术方案

3.2.1 流程图

流程图:

3.2.2 详细描述

1.关键帧提取

卖家在制作好商品介绍的短视频后,在发布商品时对短视频进行上传,视频时长不能超过2分钟。对该视频进行关键帧提取。视频是由一组连续的图像组成,如果每张图片都存储下来,则会导致视频文件过大,因此视频都会被压缩,在压缩过程中,产生了I帧、P帧、B帧。I帧是画面的完整保存,它尽可能去除了图像空间的冗余信息;P帧则是记录与前一个关键帧的差别;B帧是记录本帧与上一帧和下一帧的差别。

因此只需提取出I帧即可。在MPEG-4标准中,stss部分标识了哪些sample是关键帧,如果没有stss则全部sample是关键帧。当获取的关键帧太多时,以时间轴维度,随机选取20帧的图像供商家选择,把商家选取的5张图片与视频文件一同保存到文件数据库中。

Mp4标准

Box类型 说明
ftyp 文件类型
moov 记录媒体信息
mvhd 视频文件信息,如时长、创建时间等
track 存放视频的容器
tkhd 媒体总体信息,如宽高等
mdia 媒体容器
mdhd 换算真实事件
hdlr 媒体类型,指明是video、audio、hint
minf 媒体信息容器
stbl 偏移映射关系表
stsd sample描述
stts 时戳-sample序号映射表
stsc sample与chunk的映射表
stsz sample的大小
stz2 另一种存储sample的大小,更节省空间
stss 关键帧列表(从该处获得I帧)
stco 每个chunk的偏移
co64 64位chunk的偏移
mdat 具体的媒体数据

2.特征向量计算

本次的特征向量计算采用的是VGG16模型。由于关键帧的图片都是彩色图片,因此采用3通道。卷积核为3×3,池化核为2×2。以224×224的视频图像为例,过程如下:

  1. 输入图像大小为224×224×3,经64个通道的卷积核3×3,步长为1,共卷积2次,输出尺寸为224×224×64的特征向量。进行池化,采用池化核2×2,步长为2,输出尺寸为112×112×64的特征向量。

  2. 经128个3×3的卷积核,步长为1,卷积2次,尺寸变为112×112×128,进行池化,步长为2,输出尺寸为56×56×128。

  3. 经256个3×3的卷积核,步长为1,卷积3次,尺寸变为56×56×256,进行池化,步长为2,输出尺寸为28×28×256。

  4. 经512个3×3的卷积核,步长为1,卷积3次,尺寸变为28×28×512,进行池化,步长为2,输出尺寸为14×14×256。

  5. 经512个3×3的卷积核,步长为1,卷积3次,尺寸变为14×14×512,进行池化,步长为2,输出尺寸为7×7×256。

  6. 将数据拉平成一维数组,7×7×256=25088。

  7. 经两层1×1×4096与一层1×1×1000的全连接层,最终输出1×1000的特征向量。

3.向量数据库

向量在存储时要把文件数据库中的ID同时存下来,以及商品ID,从而建立向量、文件、商品的关系。向量搜索都是相似性搜索,通过两个向量在高位空间的距离来做判断,其实就是在高维空间中找到与目标向量最接近的K个向量,一般采用欧式距离计算,其公式:

为了召回精度高,暴力搜索的是最好的选择。但这会产生大量的不必要的计算,浪费了计算机资源。因此本方案采用类目维度进行切割。减少搜索范围。

4.视频搜索

买家需要选择要搜索的类目再进行图片上传,通过VGG16模型计算出特征向量,然后基于类目维度进行暴力搜索把最接近的K个向量筛选出来。最后再根据向量与文件的关系,把视频文件查找出来,返回给买家。

5.视频淘汰策略

每日进行定时巡检,对于长时间没有流量或者流量低于阈值的商品,需要从向量库中对其短视频进行逻辑删除,尽可能减少搜索的体积,减少计算资源的浪费。

与一种基于图片搜索视频的方案相似的内容:

一种基于图片搜索视频的方案

随着移动互联网发展,手机端购物已成为人们生活的常态。人们在搜索商品时采用的手段也越来越丰富,当前的主要搜索方式是文本搜索与拍照搜索。

鸿蒙HarmonyOS实战-Web组件(基本使用和属性)

前言 Web是一种基于互联网的技术和资源的网络服务系统。它是指由许多互连的计算机组成的全球性计算机网络,使用户能够通过浏览器访问和交互式使用各种信息和资源,如网页、文档、图片、视频、音频等。通过Web,用户可以浏览网页、发送电子邮件、参与在线社交网络、进行在线购物等各种活动。Web的核心技术包括

Airtest图像识别测试工具原理解读&最佳实践

Airtest是一个跨平台的、基于图像识别的UI自动化测试框架,适用于游戏和App,支持平台有Windows、Android和iOS。Airtest框架基于一种图形脚本语言Sikuli,引用该框架后,不再需要一行行的写代码,通过截取按钮或输入框的图片,用图片组成测试场景,这种方式学习成本低,简单易上手。

基于.NetCore开发博客项目 StarBlog - (25) 图片接口与文件上传

## 前言 上传文件的接口设计有两种风格,一种是整个项目只设置一个接口用来上传,然后其他需要用到文件的地方,都只存一个引用ID;另一种是每个需要文件的地方单独管理各自的文件。这俩各有优劣吧,本项目中选择的是后者的风格,文章图片和照片模块又要能CRUD又要批量导入,还是各自管理文件比较好。 ## 图片

鸿蒙HarmonyOS实战-Stage模型(卡片数据交互)

一、卡片数据交互 HarmonyOS卡片数据交互是指在基于鸿蒙操作系统的设备上,卡片界面之间进行数据的传输和交互。 HarmonyOS的卡片是一种轻量级的应用界面,可以在设备的屏幕上显示信息和提供操作功能。卡片可以包含各种类型的内容,如文本、图片、按钮、输入框等,并可以根据用户的操作进行相应的响

一种基于实时大数据的图指标解决方案

在电商金融等多个领域,现在主要利用图来建模,并由业务人员根据图指标提出需求。但图指标时效性差、创建修改程序十分繁琐,元数据没有同意的管理分类,这导致开发运维都十分困难,根据此痛点,今天来介绍一项基于实时大数据的图指标解决方案。

基于Web3.0的区块链图片上传

开始前,我们先简单了解一下基本的概念,我大致归纳为以下几个点 什么是Web3.0,和区块链又有什么关系?(上回的文章不就派上用场了) 需求:开发一个基于Python的Web 3.0图片上传系统。这个系统将允许用户上传图片,并将图片存储在去中心化的网络上,同时记录交易信息在区块链上。 本就是写着玩的,

一种基于光电容积波的血压测量神经网络算法,开源、低功耗、低成本的人工智能软硬件提供者

具体的软硬件实现点击 http://mcu-ai.com/ MCU-AI技术网页_MCU-AI人工智能 心血管疾病是最严重的死亡原因之一,每年在全世界造成严重的生命损失。持续监测血压似乎是最可行的选择,但这需要一个侵入性的过程,带来了几层复杂性。这促使我们开发一种方法,通过使用光体积描记图(PPG)

ImageJ使用教程(一):开始使用

目录简介界面介绍Edit->Options开始使用打开图片放大拖拽图片信息色彩分析保存图片总结参考文章 ImageJ软件 简介 ImageJ是一个基于java的公共的图像处理软件,它是由美国国立卫生研究院开发的,可运行于Windows、Linux等多种平台。软件下载解压后可直接使用,注意软件目录不要

推荐一套轻量级的开源图床系统:Light Fast Picture

如果您跟我一样平时有些博客的习惯,那么图片存储是否有困扰过你呢?今天就给大家推荐一款不错的开源图床系统:Light Fast Picture 它是一个基于koa + vue3.x + typescript实现的图床工具。它可以帮助用户快速上传图片到云端,并返回图片链接,方便用户在网页、社交媒体等平台