# retrieval-mf
retrieval-multi-feature 基于多特征融合的图像检索系统。
request:`python >= 3.9 torch>=1.10.1`
## Introduction
这是一个基于多特征融合的图像检索系统。核心部分主要分为**图像特征的提取**与**特征向量检索**两部分:
- 特征提取。目前主要包括传统特征:颜色、纹理、glcm特征;深度学习特征:vgg、vit。
- 向量检索。使用向量数据库milvus,具体见`docs/design.md`。
特征向量存放在milvus中便于比对,图片存储在文件服务器,其他元数据信息存储在mysql中。
用户首先需要将图片文件夹上传至服务器,然后开始提取特征形成特征库。之后用户可以通过上传一张图片来检索已经入库的文件中最相似的图片,并展示在页面上。
## Install
### milvus
milvus是专门设计用于处理对输入向量的查询的数据库,它能够以万亿级对向量进行索引。
使用`docker-compose`启动,具体见:[Install Milvus Standalone with Docker Compose Milvus documentation](https://milvus.io/docs/install_standalone-docker.md)
### attu
attu是milvus的开源可视化管理工具,不安装系统也可以正常启动。
docker安装启动attu,具体见:[Install Attu with Docker Compose Milvus documentation](https://milvus.io/docs/attu_install-docker.md)
```bash
docker run -p 8000:3000 -e MILVUS_URL={your machine IP}:19530 zilliz/attu:v2.2.3
```
### mysql
建议使用`docker`安装启动,如:
```bash
docker run --restart=always -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
```
### fileserver
项目中实现了一个简单的HTTP文件服务器,在`utils/file_server.py`,进入`utils`文件夹后启动:
```bash
python file_server.py
```
### server
安装好python的虚拟环境后,安装依赖并启动项目:
```bash
# 安装依赖项
pip install -r requirements
# 启动项目,可以通过 -c 参数指定配置文件,默认为 conf/conf.ini
python server.py
```
## Usage
需要先建库,然后在库中搜索相似图片。
### 批量上传
确保需要添加的图片文件夹放在服务器可以访问到的位置!!!然后在批量上传界面输入文件夹的绝对路径,点击上传按钮,若成功,则可以看到后台正在处理的进度条。
![image](docs/pic/vue_adddir.png)
### 图像检索
上传一张图片,检索相似图片。其中可以通过下拉框选择不同的算法,通过调整截取框的位置使用部分图片进行检索。
需要注意,即使图片相似度很低,也依然会返回固定数量的结果。
![image](docs/pic/vue_search.png)
yava_free
- 粉丝: 5273
- 资源: 2045
最新资源
- 双向DC DC变器 buck-boost变器仿真 输入侧为直流电压源,输出侧接蓄电池 模型采用电压外环电流内环的双闭环控制方式 正向运行时电压源给电池恒流恒压充电,反向运行时电池放电维持直流侧电压稳定
- 苹果apple传奇引擎源码
- 基于matlab的用于分析弧齿锥齿轮啮合轨迹的程序,输出齿轮啮合轨迹及传递误差 程序已调通,可直接运行
- 基于matlab的齿轮-轴-轴承系统的含间隙非线性动力学模型,根据牛顿第二定律,建立齿轮系统啮合的非线性动力学方程,同时也主要应用修正Capone模型的滑动轴承无量纲化雷诺方程,利用这些方程推到公式建
- 基于halcon的图像处理示例,包含二十多个工具,采用流程图方式编写任务,源码可以完美执行,内含说明文档
- 拖拽式运动控制框架,基于winform开发,除了第三方库都是源码,没封装,VS2022
- 基于QT流程图编辑器拖拽模块源码,模仿VisionMaster
- 光储一体机构网型控制仿真模型 光伏和储能通过各自DC DC变器输出端与DC AC变器的直流侧汇集在一起 DC-AC采用同步机控制方式运行,光伏DC DC则将光伏电池板电压控制在最佳输出功率的对应的
- 纯电动汽车动力性与经济性能仿真计算对新势力造车快速迭代开发新车型至关重要,本文根据网上查到的乘用车纯电动车辆的动力性参数指标(包括加速时间、最高车速、爬坡度等),完成了纯电动车辆的驱动电机、蓄电池、以
- 锂金属电池锂枝晶溶解-沉积过程的三维变形模型 模型为电化学模型,仿真锂金属电池在充放电过程中负极的锂枝晶沉积和溶解行为,可以计算生成锂枝晶浓度,因沉积变形而产生的应力应变和和变形情况等
- 06540计算机网络模拟试题.zip
- 风光储燃料电池电解槽微电网仿真(并离网切+一次调频 二次调频) 电解槽和燃料电池通过储氢罐相连
- 自动紧急制动AEB控制策略仿真模型与课程设计文档说明参考,整个AEB仿真模型包含AEB策略算法模型和车辆环境模型,AEB策略算法模型由两个主要子系统组成,其中包含传感器融合算法和AEB控制器 车辆与
- 新能源汽车电机控制器程序
- comsol模拟水力压裂,固体力学+达西定理
- 基于matlab的凸轮轮廓的设计计算与绘图 计算此结构的最优化参数,根据其原理输出推程和回程的最大压力角、最小曲率半径等相关结果 程序已调通,可直接运行
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈