IOPaint 远程修图:cpolar 内网穿透服务实现跨设备图片编辑

文章目录

前言

在 AI 视觉创作领域,实时交互性与计算资源的平衡始终是核心挑战。IOPaint 作为开源的 AI 修图工具,通过 WebUI 界面和模型本地化部署,解决了商业软件的订阅成本问题,但其远程访问能力长期受限于局域网环境。

技术层面分析,IOPaint 的远程协作障碍主要体现在三个方面:一是 AI 模型推理的高带宽需求(单张 4K 图片处理需传输 200MB 以上数据),二是 WebSocket 协议在 NAT 环境下的连接稳定性,三是多用户协作时的 GPU 资源调度。

cpolar 内网穿透服务与 IOPaint 的技术整合,通过创新的传输压缩机制重塑了远程修图体验。这相当于把价值 3 万元的 AI 工作站装进了口袋,随时随地都能调用。

对于技术团队而言,这种整合带来了工作流的革新:IOPaint 服务运行在高性能 GPU 工作站,通过 cpolar 的加密隧道对外提供访问,远程用户使用平板或轻薄本即可操作,所有计算在本地完成,既保护了模型安全,又突破了设备性能限制。

正如某 AI 视觉工程师所言:"cpolar 让边缘 AI 设备获得了数据中心级的访问体验,这可能是创作者工具的未来发展方向。"

【视频教程】

1.什么是IOPaint?

IOPaint 是一个基于深度学习的图像处理工具,它的全称是 "Inpainting with Object Removal"(带有对象移除功能的修复)。IOPaint 的核心功能包括:

  1. 对象移除:你可以轻松地擦除照片中的任何不需要的对象或元素。无论是广告牌、路人还是其他干扰物,只需几笔就能消失无踪。
  2. 图像修补:如果你的照片上有划痕、污渍或其他损坏,IOPaint 能够智能地填补这些区域,恢复原始的视觉效果。
  3. 内容扩展:有时候你可能觉得照片中的某个部分不够大或者不够完整,IOPaint 可以帮你扩展这部分的内容,让画面更加丰富和自然。

为什么选择IOPaint?

  1. 免费开源:IOPaint 是完全免费且开源的项目。这意味着你可以自由地使用它,并且不用担心任何隐藏费用或隐私问题。
  2. 强大的AI算法:IOPaint 采用先进的深度学习技术,能够智能地分析和处理图像,提供高质量的修复结果。
  3. 用户友好:即使你对图像处理一窍不通,IOPaint 的界面也非常直观易用。只需几个简单的步骤,就能完成复杂的图像编辑任务。

特点

● 集成多种尖端AI模型,功能丰富,可实现擦除,修复,扩展等

● 完全免费开源,支持本地部署,数据更安全可控

● 操作简单,无需专业知识,轻松上手进行AI图像编辑

● 模型选择丰富,可针对不同场景选用最佳模型

● 开源项目,开发者可根据需要进行个性化定制

使用场景

● 产品图片去除水印,瑕疵,提升产品展示质量

● 老照片的修复,擦除划痕,污渍,让记忆重焕光彩

● 风景照,建筑照扩展,让画面视野更开阔

● 创意海报,平面设计中添加丰富元素,让创意脱颖而出

● 任何需要进行局部修改,编辑,扩展图像的场景

2.本地部署IOPaint

我这里演示的是在windows系统安装和运行,运行的环境需要有node.js和Anaconda

node.js下载地址:Node.js --- 在任何地方运行 JavaScript

Anaconda下载地址:Anaconda | The Operating System for AI

首先打开左下角Anaconda的终端,创建一个python环境

shell 复制代码
conda create -n iopaint python=3.12

输入Y确定

接着激活环境

shell 复制代码
conda activate iopaint

先从github上克隆仓库

shell 复制代码
git clone https://github.com/Sanster/IOPaint.git

进入到项目中

shell 复制代码
cd IOPaint/web_app

安装前端项目依赖

shell 复制代码
npm install

再编译前端项目

shell 复制代码
npm run build

复制编译好的前端项目文件到iopaint/web_app目录

shell 复制代码
xcopy /E /I dist\ ..\iopaint\web_app\

创建一个配置文件,填写后端IP和端口

shell 复制代码
echo VITE_BACKEND=http://127.0.0.1:8080 > .env.local

接下来进入到上一级目录里,安装后端项目依赖

shell 复制代码
cd ..
shell 复制代码
pip install -r requirements.txt

输入这行命令启动后端服务

shell 复制代码
python main.py start --model lama --port 8080

重新开启一个终端,进入到项目中

shell 复制代码
cd IOPaint/web_app

启动前端开发环境

shell 复制代码
npm run dev

现在,IOPaint已经启动成功了!打开浏览器,输入localhost:5173,就可以看到IOpaint的界面了

3.IOPaint简单实用

打开一张需要处理的照片,直接涂抹需要删除的对象或区域。

IOPaint会自动识别并处理,几秒钟后,你就能看到焕然一新的照片!

4.公网远程访问本地IOPaint

目前我们在本地成功部署了IOPaint,但是如果我们想实现不在局域网下,在公网能够远程访问IOPaint的话,我们就可以使用Cpolar内网穿透来实现公网随时随地访问了!免去了复杂得本地部署过程,只需要一个公网地址直接就可以访问。

5.内网穿透工具安装

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

点击进入cpolar官网,点击免费使用注册一个账号,并下载最新版本的Cpolar。

登录成功后,点击下载Cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。

Cpolar安装成功后,在浏览器上访问http://localhost:9200,使用cpolar账号登录,登录后即可看到Cpolar web 配置界面,结下来在web 管理界面配置即可。

接下来配置一下IOPaint的公网地址~

6.配置公网地址

登录后,点击左侧仪表盘的隧道管理------创建隧道,

创建一个IOPaint的公网http地址隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:5173(本地访问的地址)
  • 域名类型:免费选择随机域名
  • 地区:选择China Top

隧道创建成功后,点击左侧的状态------在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http和https。

使用上面的Cpolar生成的任意一个公网地址,在手机或任意设备的浏览器进行登录访问,即可成功看到IOPaint界面。使用了Cpolar的公网域名,无需自己购买云服务器,即可到公网访问IOPaint随便编辑图片啦!

小结

为了方便演示,我们在上边的操作过程中使用了cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。如果有长期远程访问本地IOPaint服务的需求,但又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定的二级子域名方式来远程访问。

7.使用固定公网地址远程访问

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择China Top,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称,这里我填写的是iopaint,大家也可以自定义喜欢的名称。

保留成功后复制保留成功的二级子域名的名称:iopaint,返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理------隧道列表,找到所要配置的隧道iopaint,点击右侧的编辑:

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名:iopaint
  • 地区:选择China Top

点击更新(注意,点击一次更新即可,不需要重复提交)

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名:

最后,我们使用固定的公网https地址在任何浏览器打开访问,可以看到访问IOPaint成功了这样一个固定且永久不变的公网地址就设置好了。

总结

IOPaint 是一个强大且易用的图像处理工具,它可以帮助你轻松解决照片中的各种问题。结合Cpolar的使用,你可以快速搭建和分享自己的 IOPaint 服务,让更多的朋友享受到高质量的图像修复体验。

希望这篇教程能给你带来乐趣和技术上的提升,祝你在图像处理的道路上越走越远!

开源工具+内网穿透技术的组合,让本地化图像处理变得触手可及。或许真正的智能修图,就是用最小成本解决最大痛点。

本篇文章知识点来源cpolar官网https://www.cpolar.com

相关推荐
cpolar技术支持2 天前
第三方平台回调总说收不到?把本机 Webhook 收单页跑通,用 cpolar 固定二级子域名给对面看实时请求
node.js·内网穿透·webhook·cpolar·回调对接
Xxtaoaooo3 天前
NocoDB在线表格数据库:fnOS部署、MySQL可视化与远程协作实操
数据库·mysql·docker·cpolar·nocodb
承渊政道3 天前
CentOS 7单机部署Elasticsearch 7.17.29:从启动报错、CRUD验证到固定公网地址的完整过程
linux·elasticsearch·centos·内网穿透·cpolar·单机部署
承渊政道6 天前
自建服务越来越多怎么管理?Docker部署Flare,搭一个自己的数字入口
运维·docker·容器·内网穿透·cpolar·nas·flare
cpolar技术支持6 天前
喜欢的直播总要蹲点?用 bililive-go 在 NAS 后台自动录制直播并远程管理,再用 cpolar 让外地也能看回放
内网穿透·cpolar·nas·远程访问·自托管
cpolar技术支持9 天前
外网测试机的异常传不回内网?自托管 Sentry,用 cpolar 打通错误上报链路
python·nginx·docker·cpolar·sentry
cpolar技术支持10 天前
Spring Boot 接口本地正常,异地前端却报跨域?用 cpolar 跑通 CORS 预检与白名单
java·springboot·cpolar·前后端分离·cors
cpolar技术支持12 天前
本地数据库客户端只能自己用?用 cpolar 安全访问 NAS 上的 PostgreSQL 管理台
postgresql·内网穿透·cpolar·nas·pgadmin
cpolar技术支持18 天前
服务器上的 Nginx 只想改配置却不敢动?把 Nginx-UI 跑起来,用 MCP 让 AI 助手帮你安全改配置,再用 cpolar 把面板短时开给自己
nginx·ai·cpolar·mcp·nginx-ui
cpolar技术支持1 个月前
本地 Playwright 测试报告怎么远程复盘?Trace Viewer 跑起来后,用 cpolar 分享失败现场
前端·自动化测试·测试工具·cpolar·playwright