动态处理网络应用中的图像释放出创造可能性的潜力开发者通过将Flask和Cloudinary强健图像管理机能相结合,可编程交互式视觉接触应用深入观察样本应用如何集合各种元素并使用Flask和Cloudinary执行动态图像处理系统
博客文章中,
- 从计算机上传图像到云式账号
- 应用带自动标签并带标签的上传预置热切变换上传图像
- 修改显示图像内项目颜色
- 从云型账号删除图像
还没有签云口来.
安装云化包和其他包
Pip安装瓶子插件denvp安装云
- 配置云
- 在您的项目中创建文件调用
.env
内含您的API环境变量从您的产品环境证书:
#复制并粘贴API环境变量#
:
@
- 在您的项目中创建新文件调用
ap.py
后拷贝并粘贴到此文件内以配置Cloudinary项目:
flask导入 Flask,defe_template,denv导入云性云性导入请求.apiload_dovenv
- 获取标签 上传图像例子, 我们将使用亚马逊Rekognition自动标签你可以订阅它附加菜单.
- 创建文件夹媒体库来并来上传图像举个例子,我们称此文件夹为python-examples
- 创建上传预置带下列设置:
- 选择您偏爱的预设名称(在此示例中,它被称为python)
- 添加文件夹名你刚创建 step 6文件夹.
- 转弯文件名或外部定义公共标识至上传.
- 导航至媒体分析与AI下方分类化检查框亚马孙复科自贴.
- 保存上传预设
下一节中,我们将审查代码片段并探索其各自功能
下方代码中,我们将从计算机上传图像到云式账号
@app.route('/', methods=['GET', 'POST']) def upload_file(): if request.method == 'POST': file = request.files['file'] if file: response=cloudinary.uploader.upload(file, upload_preset = "python", unique_filename = True, overwrite=True, eager=[{"width": 500, "crop": "fill"}]) image_url = response['eager'][0]['secure_url'] tags = response['info']['categorization']['aws_rek_tagging']['data'][:3] return render_template('index.html', image_url=image_url, tags=tags) return render_template('index.html')
使用云性上传法,我们可以定义上传文件的一些设置例例中,我们将使用前步创建的上传预置件, 应用rekognition自动标签并上传到定义文件夹中 。
并热切转换上传图像 定义图像必须裁剪填充500像素宽方
内图像_url
变量获取上传图像的URL标签标签
变量中将列出三大标签,供我们在网站显示
下一段代码,我们可以调用生成变色特征
@app.route('/recolor', methods=['POST']) def recolor(): if request.method == 'POST': image_url = request.form.get('image_url') public_id = "/".join(image_url.split('/')[-2:])[:-4] color = request.form['color'] color_for_url = color[1:] chosen_object = request.form['object'] transformation = f"gen_recolor:prompt_{chosen_object};to-color_{color_for_url}/c_fill,w_500" recolor_url = cloudinary.utils.cloudinary_url(public_id, effect=transformation)[0] response = cloudinary.api.resource(public_id, tags=True) tags = response['info']['categorization']['aws_rek_tagging']['data'][:3] return render_template ('index.html', recolor_url=recolor_url, image_url=image_url, tags=tags)
生成图像URL并具有变色能力,我们首先需要定义我们想变色到什么取信息用户通过选择对象
可变数并需要颜色 并计划应用到图像由用户采色输入字段提供颜色_for_url
#符号从颜色hex编解法使其在URL编译中有效
识别对象和颜色后,我们必须用给定语法重构URL变换
可变数
上传图像可用下列代码从您的云式账号删除:
app.route('/elete',方法表示'POST') def删除image (:如果请求.method=#POST':image_url=request.get.get
要删除图像,我们需要公开图像识别码和存储图像的文件夹上方代码抓取URL并从URL端提取文件夹和图像标识
运行此代码从媒体库删除上传文件
例子应用展示云化图像管理能力上传完全由Python完成然,您也可以使用云化上传部件定制并扩展上传可能性边用边归位自动挂起特征在这里,还有其他插件并AI特征提高生产率并接触图片视频
可查找全应用本片Github重写叉子并应用更多自身变换释放媒体全部潜力