问题标签 [gm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
610 浏览

node.js - 错误:在 AWS Lambda 上使用 gm 降低图片质量时,流产生空缓冲区

我已阅读所有其他主题并尝试了一些答案,但我似乎无法弄清楚为什么会出现此错误。我的代码在 S3 存储桶中获取上传的图片,降低质量并将其放入第二个存储桶中。干净利落。使用小/中型图像一切正常,但如果我上传超过 2 MB(或多或少)的内容,我会在标题中收到错误。我的 Lambda 函数有 128MB 和 3 分钟超时;这是代码:

知道为什么会这样吗?我已将 async、gm 和 graphicsmagick 加载到 Lambda(作为 zip 文件)。全部通过 npm 下载

0 投票
0 回答
55 浏览

javascript - 遍历图像文件夹并使用节点 gm 调整大小

此代码导致仅将单个图像写入输出(6175710.jpg)。相反,我想要所有三个。我的代码中有什么不正确的。我正在使用节点 gm模块。看我的实现:

但是我的控制台显示了这一点:

更新:我使用Filehound库解决了它。

0 投票
1 回答
710 浏览

javascript - NodeJS/gm:带有异步调用的 Promise

gm用来在我的 nodeJS 应用程序中操作一些图像。这就是我的功能的样子。

如您所见,有一个用于某些操作的开关(在此示例中:旋转)。gmStream被创建并在切换之后.stream()pipe()被使用。到目前为止一切都很好。

但是对于 switch case resize,我需要知道图像的尺寸,我确实通过size(). 但这是一个异步调用。这gmStream不用于stream()下面所示的开关。但是在这里面会有更多的数据库东西stream(),所以我需要使用同样的东西......

0 投票
2 回答
6884 浏览

javascript - JS:承诺不返回值

我需要获取一个异步函数的值。我尝试使用 Promise,但这不起作用:

我得到的结果是Promise { <pending> }

0 投票
0 回答
3222 浏览

node.js - 删除节点中的图像背景

我正在从事一个项目,我从中捕获用户的面部并将其放在现有模型上。为了结合面部和模型图像,我使用节点中的 gm 库;对于人脸检测,我使用的是 opencv。我能够同时检测面部并将其放在模型上。但问题是我的模型有透明背景,但用户的脸没有(因为人脸是从相机捕获的)。

我想删除脸部的背景并使其透明。有没有办法让这成为可能?

这是我的集成代码:

这里crp.png是人脸图像,modelimagepath是模型图像完整的opencv + gm代码:

0 投票
0 回答
722 浏览

ios - Swift 4:tableView 和 scopeButtons 在 iOS 11 的 searchBar 下滑动

我在 Swift 3 中制作了一个带有 tableView 的 App,它的标题中有一个 searchBar。searchBar 也有一个带有 scopeButton 的栏。在 iOS 10 中,searchBar 滑到了 navigationBar 所在的位置,一切正常。然而,在 iOS 11 中,tableView 在变为活动状态时会在 searchBar 下滑动,因此第一个单元格几乎被完全覆盖。当我现在点击一个单元格以移动到另一个视图并返回时,scopeButton 移动到了 searchBar 下方。现在第一个单元格再次可见,但到 searchBar 的距离有点大,当然 scopeButton 完全无法使用。我还将我的项目转换为 Swift 4,但这并没有帮助。我正在使用 Xcode 9 GM 和 iOS 11 GM。这是我的代码:

这就是我点击搜索栏时的样子: Screesnhot

如您所见,第一个单元格几乎被完全覆盖。

这是当我在 searchBar 处于活动状态时单击单元格然后返回 tableView 时发生的情况:屏幕截图

0 投票
0 回答
71 浏览

node.js - Express JS:大尺寸图像的图像裁剪失败

我有一个图像上传系统(将图像上传到 AWS s3)并在上传后将图像裁剪为各种裁剪尺寸

但是在上传大图像时图像裁剪失败,没有内存泄漏问题,但我在 s3 存储桶中得到 0 字节图像。

这是代码

对于较小尺寸的图像没有问题但是当我上传较大的图像裁剪失败时我认为我的代码存在瓶颈但我找不到它

0 投票
1 回答
487 浏览

javascript - node.js 异步:裁剪图像并上传到服务器

我想将图像裁剪成各种尺寸并将它们上传到 AWS S3。裁剪尺寸存储在一个数组中。

我正在使用async瀑布和series方法来实现这一点。

这就是代码的执行方式:

在 中重复步骤 1 和 2 async.each

  1. 裁剪图像。

  2. 将裁剪后的图像上传到 AWS S3。

但上传大尺寸图片时失败。这是我得到的输出:

预期输出:

0 投票
1 回答
466 浏览

node.js - 管道调整大小的图像以表达响应将响应头设置为“Content-Length:0”并且响应中没有数据

我正在构建一个虚拟图像生成器来提高我对 Node 和 Express 的理解。我从 URL 中获取尺寸并使用 GM 包来调整它的大小。生成的流通过管道传输到响应中。但是我没有在前端获取数据,当我在 Chrome 的开发工具的网络面板中检查响应选项卡时,我看到“此响应没有可用数据”。有人可以给我一些指示,因为我不确定我可以从哪里开始调试它。

我收到的响应标头如下所示: 在此处输入图像描述

0 投票
0 回答
200 浏览

imagemagick - Graphicsmagick 在服务器上花费了更多的处理时间

我正在使用 GraphicsMagick 为多层图像着色并将其组合成单个图像并返回它。

在本地,处理单层 (1000 x 1000)大约需要30 毫秒。

以下是图片。

在此处输入图像描述

以下是我的着色代码:

但是,当我将它托管到我的服务器并执行负载测试时,只有 50 个并发用户负载。单层的性能下降到单层的250 毫秒左右。

以下是我的服务器配置:

GraphicsMagick: 1.3.26

操作系统:窗口服务器 2012

处理器: Intel(R) Xeon(R) 2.40 GHz(2 个处理器)

内存: 128GB

请帮助我提高性能,以便它可以轻松处理巨大的负载。

谢谢。