# 相似图片搜索系统 这是一个基于百度AI开放平台的相似图片搜索API的封装系统,提供了图片入库、检索、删除和更新等功能,并配有简洁美观的Web界面。 ## 功能特点 - **图片入库**:将图片添加到百度相似图片搜索库中,支持添加名称、ID和标签 - **图片检索**:上传图片搜索相似的图片,支持标签过滤 - **图库管理**:更新和删除图库中的图片信息 - **直观界面**:简洁美观的Web界面,操作便捷 ## 安装与使用 ### 环境要求 - Python 3.9+ - Conda - Poetry ### 安装步骤 1. 克隆或下载本项目到本地 2. 使用Conda创建虚拟环境: ```bash conda env create -f environment.yml conda activate imgsearcher ``` 3. 使用Poetry安装依赖: ```bash poetry install ``` 4. 配置API密钥: 在项目根目录创建`.env`文件,填入百度AI平台的API密钥: ``` BAIDU_API_KEY=你的API_KEY BAIDU_SECRET_KEY=你的SECRET_KEY ``` 5. 创建上传目录: ```bash mkdir uploads ``` 6. 运行应用: ```bash poetry run python app.py ``` 7. 在浏览器中访问: ``` http://localhost:5000 ``` ## 使用说明 ### 图片入库 1. 在"图片入库"标签页中,选择要上传的图片 2. 填写图片名称和ID(用于后续识别) 3. 可选择添加标签(最多2个,用逗号分隔) 4. 点击"上传入库"按钮 ### 图片搜索 1. 在"图片搜索"标签页中,选择要搜索的图片 2. 可选择添加标签过滤条件 3. 选择标签逻辑(AND或OR) 4. 点击"搜索"按钮 5. 查看搜索结果 ### 图库管理 1. 先在"图片搜索"标签页进行搜索 2. 在搜索结果中,可以对图片进行编辑或删除操作 ## API说明 本系统封装了百度相似图片搜索API的以下功能: - 图片入库:`/upload` (POST) - 图片检索:`/search` (POST) - 图片删除:`/delete` (POST) - 图片更新:`/update` (POST) - 获取Token:`/api/token` (GET) ## 注意事项 - 上传的图片最短边至少50px,最长边最大4096px - 支持JPG、PNG、BMP格式的图片 - 每个图片可以添加最多2个标签 - 检索接口不返回原图,只返回入库时填写的brief信息 - 图片删除可能会有延时生效(百度API特性) ## 许可证 MIT