mono8转换过来显示多个图像

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mono8转换过来显示多个图像相关的知识,希望对你有一定的参考价值。

参考技术A 同一幅图像在RGB中的值是Mono8的3倍。
Mono8只是grayscale上像素值从0到255的表。根据其他颜色(红,绿,蓝),RGB是同一张表。因此,同一幅图像在RGB中的值是Mono8的3倍,所以mono8转换过来显示多个图像,为每个像素的组件重复相同的值。

在 Mono 上运行 ASP.NET 5 的 Ubuntu 上使用 MVC 6 调整图像大小

【中文标题】在 Mono 上运行 ASP.NET 5 的 Ubuntu 上使用 MVC 6 调整图像大小【英文标题】:Resize images with MVC 6 on Ubuntu running ASP.NET 5 on Mono 【发布时间】:2016-08-07 05:23:00 【问题描述】:

在 Ubuntu 上运行的 ASP.NET 5、MVC 6、DNX451 和 MONO 中,如何调整图像的大小?

我无法解决这个问题,因为我使用的标准组件(例如 ImageProcessor 和 ImageResizer.NET)似乎无法正常工作。

【问题讨论】:

【参考方案1】:

查看这个跨平台库:https://github.com/JimBobSquarePants/ImageSharp

示例用法:

using (FileStream stream = File.OpenRead("foo.jpg"))
using (FileStream output = File.OpenWrite("bar.jpg"))

    Image image = new Image(stream);
    image.Resize(image.Width / 2, image.Height / 2)
         .Greyscale()
         .Save(output);

【讨论】:

【参考方案2】:

我目前正在使用 DNX 4.5.1 (ASP.NET 5) 和 MVC 6 开发一个网站,该网站旨在托管在 Ubuntu 服务器上。

最近我遇到了重新调整图像大小的问题,所以我不得不跳出框框思考。在我的情况下,没有必要在我的开发环境中重新调整图像大小,因此我专注于如何在即将到来的产品环境中处理这个问题。

解决方案是使用 ImageMagick,这是一个非常好的 Linux 小软件。

我就是这样解决的:

if (_hostingEnvironment.IsProduction())

        var command = "-c 'convert " + filePath + " -resize 960x960 -quality 70 " + filePath + "'";

        Process proc = new System.Diagnostics.Process();
        proc.StartInfo.FileName = "/bin/bash";
        proc.StartInfo.Arguments = command;
        proc.StartInfo.UseShellExecute = false;
        proc.StartInfo.RedirectStandardOutput = false;
        proc.Start();

因此,这可以通过将文件上传到某个文件夹(在我的情况下为临时文件夹)来实现,然后我执行转换命令。我用项目中需要的转换参数覆盖了同一个文件。如果您想要更大的图像或更好的质量,您可以使用更多参数。

这是一个不错的解决方案,但正如我所说,我只专注于在 Ubuntu 上进行这项工作,这将是我的生产环境,因此它被封装在 if 子句中,检查我是否在 prod 上,但在 Windows 环境中可能也可以使用类似的方法,但我宁愿使用一些标准组件来实现它。

【讨论】:

在服务器上运行 ImageMagick 时要非常小心。我不会推荐它。 imagetragick.com

以上是关于mono8转换过来显示多个图像的主要内容,如果未能解决你的问题,请参考以下文章

使用 cvbridge C++ 时与 ORB 兼容的图像编码

在ios中将html转换为图像

为多个图像创建Zip文件c#

动手动脑(课堂作业05)第二句错误显示为:类型不匹配:不能从 Mammal 转换为 Dog 第三句错误显示为:类型不匹配:不能从 Cat 转换为 Dog

如何将多个 .img 图像转换为 .bmp 格式?

sh 以pdf格式转换多个图像