![]() |
1
0
首先要做的是将您提供的预期输出分离到其组成的RGBA通道中,并排排列,以便我们可以看到每个通道的目标:
下一步是检查文件大小。你说的是512x512像素的16位数据。这意味着我期待512x512x2,即524288字节,但你的文件有524290字节。快速检查显示您有一个2字节的 BOM 一开始我们需要跳过。这意味着我们的命令必须将数据视为512x512像素的16位灰度数据,并使用2字节的头进行跳过。我们也不想读取文件4次,所以我们将其放入MPR “Magick持久寄存器” (或 “命名内存块” 是我的想法)并在每次解码通道时从那里回忆原始数据。 因此,在下面的命令中,第一行读取输入图像,跳过BOM并将其放入MPR。第二行获取MPR的副本,比特将红色通道从中旋转出来。第二行、第三行和第四行对绿色、蓝色和Alpha通道的作用相同。最后一行将处理堆栈中的4个通道合并到输出文件中。
注:
在我不使用且无法测试的Windows上,该命令将如下所示:
为了好玩,你可以用Python做同样的事情:
|
![]() |
VeceluXa · 在Android中将黑白位图转换为单通道JPEG 1 年前 |
![]() |
Mohamed Obeid · 在灰度图像上散射网格 1 年前 |
![]() |
Pete · 三维体积与其主轴对齐 1 年前 |
|
Doofenmirtz Mirtz · 录制视频中特定对象的角度检测 2 年前 |