node.js - 有没有用于从图像中删除背景的 npm 包?

标签 node.js image npm service background-image

有人知道如何借助任何软件包从图像中删除背景吗?

我尝试使用remove.bg包,但它似乎是一项付费服务​​。

最佳答案

Disclaimer, I'm the author of rembg.js.

是的,https://www.remove-background.ai是唯一允许免费API查询的API。

不过,每月最多可以免费删除 60 次,与其他竞争对手相比,它仍然是一个不错的选择,因为他们甚至不允许通过 API 免费删除背景。 如果你看一下定价,它实际上是非常便宜的订阅,每 100 次删除每月 1 美元起。 您还可以获得无限制的访问权限。

npm i --save @remove-background-ai/rembg.js

然后创建index.mjs:

import  { rembg } from '@remove-background-ai/rembg.js';
import dotenv from 'dotenv';
// Load environment variables from .env file
dotenv.config();

// API_KEY will be loaded from the .env file
const API_KEY = process.env.API_KEY;

// log upload and download progress
const onDownloadProgress = console.log;
const onUploadProgress = console.log;

rembg({
    apiKey: API_KEY,
    inputImagePath: './input.png',
    onDownloadProgress,
    onUploadProgress
}).then(({ outputImagePath, cleanup }) => {
    console.log('path', outputImagePath);
    // if called, it will cleanup (delete from disk) your removed background image
    // cleanup();
});

如果您想显示上传/下载进度条,您可以创建自己的 onDownloadProgress 和 onUploadProgress 回调。 两个回调都接受 AxiosProgressEvent 作为事件参数,在我的测试中,我能够删除背景,这是输出:

enter image description here

关于node.js - 有没有用于从图像中删除背景的 npm 包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75628409/

相关文章:

javascript - 如何使用 javascript 从 url 下载图像并将其保存到本地目录?

image - 如何在 Qt 5 中保存灰度图像

node.js - 需要依赖 Node 模块中的另一个依赖项

npm - 当预发布版本是最新可用版本时,semver 中的插入符号 (^) 是否与预发布匹配?

c - 在 Solaris 上构建 Node.JS : "Use of <stdbool.h> is valid only in a c99 compilation environment."

node.js - 如何运行用 TypeScript 编写的 Mocha 测试?

node.js - 什么是 koa :sess. 信号?

node.js - 尝试使用 this.refs.value 时,使用 this.refs 已被弃用错误

html - CSS - 响应式并排图像

node.js - 使用 Git Deploy 将 Ghost 0.4.2 部署到 Azure 站点