使用 Magick++ 获取像素颜色?

2023-11-25

我已经问过这个问题了,但那是关于FreeImage。现在我正在尝试做同样的事情ImageMagick(更正确地说,与Magick++).

我所需要的只是获取图像中像素的 RGB 值,并能够将其打印到屏幕上。我在ImageMagick论坛,不过好像没人。 :-( 有人可以帮忙吗?


版本 6 API

给定一个“Image“对象,你必须请求一个”像素缓存“,然后使用它。文档是here and here:

// load an image
Magick::Image image("test.jpg");
int w = image.columns();
int h = image.rows();

// get a "pixel cache" for the entire image
Magick::PixelPacket *pixels = image.getPixels(0, 0, w, h);

// now you can access single pixels like a vector
int row = 0;
int column = 0;
Magick::Color color = pixels[w * row + column];

// if you make changes, don't forget to save them to the underlying image
pixels[0] = Magick::Color(255, 0, 0);
image.syncPixels();

// ...and maybe write the image to file.
image.write("test_modified.jpg");

版本 7 API

版本 7 中对像素的访问发生了变化(请参阅:porting),但低级访问仍然存在:

MagickCore::Quantum *pixels = image.getPixels(0, 0, w, h);

int row = 0;
int column = 0;
unsigned offset = image.channels() * (w * row + column);
pixels[offset + 0] = 255; // red
pixels[offset + 1] = 0;   // green
pixels[offset + 2] = 0;   // blue
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Magick++ 获取像素颜色? 的相关文章

  • 如何在 Caliburn.Micro 中使用 Conductor 的依赖注入

    我有时用Caliburn Micro http caliburnmicro com创建应用程序 使用最简单的 BootStrapper 我可以像这样使用 IoC 容器 SimpleContainer private SimpleContai
  • 如何创建语法突出显示文本框[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如何使用 C Net 创建语法突出显示文本框 Take 闪烁网 http scintillanet codeplex com 并采取其
  • OpenCV SVM 给出奇怪的预测结果

    我对 OpenCV 和支持向量机都很陌生 我想使用 SVM 训练具有两个标签的数据集 然后预测给定集合的标签 我当前的集合包含大约 600 行 具有相等的类分布 1 为 300 行 1 为 300 行 包含 34 列 这是我当前用于设置 O
  • 等待运算符错误

    我的代码有问题 我怎么解决这个问题 这个问题出现在await操作符中 public MyModel HttpClient client new HttpClient HttpResponseMessage response await cl
  • 为什么 fgets 接受 int 而不是 size_t?

    功能如strcpy malloc strlen 和其他各种接受他们的参数或返回值作为size t代替int or an unsigned int出于显而易见的原因 一些文件功能 例如fread and fwrite use size t以及
  • 带有嵌入 Flash 视频的 PDF 示例?

    有谁知道我在哪里可以查看嵌入 Flash 视频的 PDF 示例 我知道问这个问题很愚蠢 因为你会认为任何面向技术的用户都应该能够使用谷歌找到一个 但我真的找不到 我的另一个问题是 使用 C 中的 API 将 Flash 视频嵌入 PDF 文
  • C 链表销毁函数

    我正在尝试学习 C 和很多人一样 我对指针有点困惑 无论如何 我创建了一个递归函数来销毁我的链表 但是正如我调试的那样 当我从函数返回时 列表的头部不应该为空 所以我猜这是对指针的一些基本误解 这是函数 void destroy struc
  • 微软怎么能说WinAPI中一个字的大小是16位呢?

    我刚刚开始学习WinAPI 在MSDN中 对WORD数据类型提供了以下解释 WORD16 位无符号整数 范围是十进制 0 到 65535 该类型在 WinDef h 中声明如下 typedef 无符号短 WORD 很简单 而且它与我一直在使
  • Web浏览器控件:如何捕获文档事件?

    我正在使用 WPF 的 WebBrowser 控件加载一个简单的网页 在这个页面上我有一个锚点或一个按钮 我想在我的应用程序后面的代码中 即在 C 中 捕获该按钮的单击事件 WebBrowser 控件是否有办法捕获加载页面元素上的单击事件
  • _MM_TRANSPOSE4_PS 在 GCC 中导致编译器错误?

    我第一次在 GCC 而不是 MSVC 中编译我的数学库 并经历了所有的小错误 我遇到了一个根本没有意义的错误 Line 284 error lvalue required as left operand of assignment 284号
  • 如何解析多态 JSON 数组?

    我有一个 JSON 格式的文件 其中包含个人用户的记录 一些用户的记录中间有一个评论字段 我只想解析顶级项目 全名 贡献者姓名 电子邮件 使用 Newtonsoft JSON 解析器 但我似乎无法让它识别单个对象 当我将整个字符串解析为一个
  • ef core 在更新数据库期间不使用 ASPNETCORE_ENVIRONMENT

    我使用 Visual Studio 通过一定的迁移来更新我的所有环境 使用下面的命令效果很好 update database Migration initMigrationProduct c ProductContext Environme
  • 解析连接字符串

    是否有标准库或代码片段可以使用这样的连接字符串获取值 string connstr DataServiceUrl http localhost foo RemoteServerConnection server http localhost
  • 为什么最小的 int -2147483648 的类型为“long”? [复制]

    这个问题在这里已经有答案了 对于一个学校项目 我必须编写 C 函数 printf 的代码 一切进展顺利 但有一个问题我找不到好的答案 所以我来了 printf PRINTF d t d n 2147483648 告诉我 gcc Werror
  • 我的代码哪里有泄漏?

    下面是我的代码 它打开一个 XML 文件 old xml 过滤无效字符并写入另一个 XML 文件 abc xml 最后 我将再次加载 XML abc xml 当执行以下行时 出现异常 表示 xml 文件被另一个进程使用 xDoc Load
  • 快速将文本附加到文本框

    我有一个BackgroundWorker正在发布消息的线程 使用BeginInvoke在 GUI 中的文本框中 方法 write debug text 在文本框中显示文本使用AppendText并将文本写入Console 外观上是这样的Ba
  • 如何在realm-dotnet中存储System.Collections.Generic.Dictionary

    我正在尝试将 Realm NET 集成到我的 uwp 项目中 我想知道是否有任何方法可以在 Realm dotnet 库中存储 System Collections Generic Dictionary 我试过这个 public class
  • 使用 DataGridViewCheckboxCell 真正禁用 DataGridView 中的复选框

    有谁知道如何使用 DataGridViewCheckboxCell 禁用 DataGridView 中的复选框 我可以将其设置为只读 并设置背景颜色 但我无法让复选框本身显示为禁用状态 有什么想法吗 Guess 你必须自己画 http so
  • Selenium - 模式对话框存在 - 如何接受信息?

    我有以下问题 在页面上提交一些日期后 我有一个如图所示的模式对话框 我想单击 ENTER 来浏览该模式 但它不起作用 我有以下代码 driver FindElement By CssSelector input submit Click A
  • 从 C/C++ 程序进行 Ping

    我想编写一个 C 或 C 程序 给定一个 IP 地址 对其进行 Ping 然后根据 Ping 是否成功执行进一步的操作 这个怎么做 尽情享受Ping 页面 http www ping127001 com pingpage htm 其中有一个

随机推荐

  • 获取路径当时的位置

    有没有一种很好的方法来计算给定时间 从0到1 路径 CGPath或UIBezierPath 的位置 例如 使用 CAShapeLayer 可以创建动画笔划末端 我想知道任意时间该笔画末端的位置 预先感谢 阿德里安 您绝对可以将您的方法基于
  • Instagram API 媒体/搜索/端点返回时间范围之外的结果

    我目前正在使用 Instagram API 媒体 搜索端点 使用以下示例配置 curl XGET https api instagram com v1 media search lat 1 3058866783157643 lng 103
  • 在 Dagger 中注入泛型

    在 Dagger 中是否可以执行如下操作 public abstract class Presenter
  • 为什么从不同线程更新 UI 的模式没有内置到 .NET 框架中?

    我知道 为什么我的这个框架像 不像 xyz 问题有点危险 但我想看看我错过了什么 在 WinForms 中 您无法从另一个线程更新 UI 大多数人使用这个图案 private void EventHandler object sender
  • 在 phpmyadmin 中导出数据库失败 (localhost)

    当我尝试在 phpmyadmin 中导出数据库 sql 文件时 它失败了 我收到以下错误 由于 PHP 级别的执行时间限制较低 您的输出不完整 我不知道该怎么办 我已经经历过确切的问题了 根据评论 Windows WAMP MySQL 这是
  • 使用 PowerShell 远程复制文件

    我正在写一个电源外壳我想从服务器 A 运行的脚本 我想连接到服务器 B 并将文件复制到服务器 A 作为备份 如果无法做到这一点 那么我想从服务器 A 连接到服务器 B 并将文件复制到服务器 B 中的另一个目录 我看到Copy Item命令
  • 母版初始化文化没有找到合适的方法来覆盖错误?

    我正在尝试使用 ASP NET 和 C 开发一个多语言网站 我的问题是 我想让我的 MasterPage 支持在语言之间切换 但是当我将 InitializeCulture 放入 masterpage cs 中时 出现此错误 这是我的代码
  • 在表视图单元格中编辑文本字段的最佳方法

    在我的应用程序中 我有很多views需要到位editable 我有tableviewcells设置以包括UITextField已启用 并且可以更改文本 这很好 它可以工作 我的问题是跟踪这些的最佳方法是什么 我是不是该 Keep an iV
  • Windows 8 包裹面板

    我在自动将 StackPanel 分成下一行时遇到问题 这是示例代码
  • .NET隐藏标题栏但保留边框

    I was wondering how to hide the titlebar of a form but keep the original border like e g Dropbox does 提前致谢 Set FormBorde
  • 在浏览器中使用 javascript 按类设置 html 输入元素的值?

    我需要根据类 class Qty 设置一堆输入框的值 如果我使用 ElementID 这会起作用 document getElementById G Qty 0 value 101 但这不起作用 document getElementsBy
  • 如何覆盖屏幕阅读器对句子中单词的发音而不使其在句子中暂停?

    假设我有以下 HTML 句子 p Please enter your licence number p 屏幕阅读器将 licence 一词误读为 liss ens 语音拼写 它应该发音为 lice ens 语音拼写 我想通过向屏幕阅读器提供
  • 捕获的 Throwable 或异常为 null

    类似的问题在这里被问了两次 但从未得到任何答案 或者回答是 不可能 抱歉 可能太多了 try the line that causes the error LinearLayout cell LinearLayout inflater in
  • Matplotlib 在循环中绘图时内存不足

    我有一个相当简单的绘图例程 如下所示 from future import division import datetime import matplotlib matplotlib use Agg from matplotlib pypl
  • 哪些项目文件不应签入 SVN

    目前 我签入了所有文件 包括 dll VS 解决方案文件 图像等 我经常需要将这些文件签出到临时服务器或其他开发人员 因此拥有这些文件意味着项目已准备就绪 这里的最佳实践是什么 编辑 如果我不添加生成的文件 例如 dll 文件 如何确保它们
  • PHP SOAP 调用中多个同名元素

    我知道这类问题已经被问过很多次了 我花了几个小时阅读并尝试提供的解决方案 但似乎没有一个适合我的情况 我需要向 API 发送 SOAP 请求 该请求可以包含重复的元素 如下所示
  • 我如何(有办法)将 HRESULT 转换为系统特定的错误消息?

    根据this 没有办法将 HRESULT 错误代码转换为 Win32 错误代码 因此 至少据我理解 我使用 FormatMessage 来生成错误消息 即 std wstring Exception GetWideMessage const
  • 我可以设置viewpager的项目宽度吗?

    我希望我可以在viewpager的页面中显示3个项目 但是现在我只能设置viewpager的padding值和margin值 所以它在viewpager的页面中只显示一个项目 如何设置项目宽度 我认为如果我可以设置更小的项目宽度 viewp
  • 我什么时候应该选择IsolatedStorage 和AppData 文件存储?

    我最近发现了IsolatedStorage net 中的设施 我想知道什么时候应该将它们用于我的应用程序数据 什么时候应该使用 例如 Application LocalUserAppDataPath 我注意到的一件事是Application
  • 使用 Magick++ 获取像素颜色?

    我已经问过这个问题了 但那是关于FreeImage 现在我正在尝试做同样的事情ImageMagick 更正确地说 与Magick 我所需要的只是获取图像中像素的 RGB 值 并能够将其打印到屏幕上 我在ImageMagick论坛 不过好像没