Stream 是一款轻量级的工具,用于将图像或图像部分的一个或多个像素分量流式传输到您选择的存储格式。它在读取输入图像时逐行写入像素分量,这使得 stream 在处理大型图像或需要原始像素分量时非常有用。
使用示例
我们在此列出了一些 stream 命令的示例,以说明其实用性和易用性。首先,我们将 640x480 JPEG 图像的红色、绿色、蓝色分量作为无符号字符流式传输到磁盘。
magick stream -map rgb -storage-type char image.jpg pixels.dat magick display -depth 8 -size 640x480 rgb:pixels.dat
这里我们从 TIFF 图像中提取一个 100x100 的区域,以灰度格式作为双精度浮点数。
magick stream -map i -storage-type double -extract 100x100+30+40 image.tif gray.raw
您还可以将要提取的区域与图像文件名关联。
magick stream -map i -storage-type double 'image.tif[100x100+30+40]' gray.raw
流式传输要求图像编码器按行顺序读取图像像素。并非所有格式都符合此要求。在工作流程中使用流式传输之前,请先验证特定图像格式。
选项摘要
stream 命令识别以下选项。单击某个选项以获取有关该选项工作原理的更多详细信息。
| 选项 | 描述 |
|---|---|
| -authenticate value | 使用此密码解密图像 |
| -channel type | 应用选项以选择图像通道 |
| -colorspace type | 设置图像颜色空间 |
| -debug events | 显示大量的调试信息 |
| -define format:option | 定义一个或多个图像格式选项 |
| -density geometry | 图像的水平和垂直密度 |
| -depth value | 图像深度 |
| -extract geometry | 从图像中提取区域 |
| -help | 打印程序选项 |
| -interlace type | 图像交错方案的类型 |
| -interpolate method | 像素颜色插值方法 |
| -limit type value | 像素缓存资源限制 |
| -list type | 颜色、配置、委托、格式、魔法、模块、资源或类型 |
| -log format | 调试信息的格式 |
| -map components | 以这种格式存储像素。 |
| -monitor | 监视进度 |
| -quantize colorspace | 在此颜色空间中减少图像颜色 |
| -quiet | 抑制所有警告消息 |
| -regard-warnings | 注意警告消息。 |
| -respect-parentheses | 设置保持有效,直到括号边界。 |
| -sampling-factor geometry | 水平和垂直采样因子 |
| -seed value | 播种新的伪随机数序列 |
| -set attribute value | 设置图像属性 |
| -size geometry | 图像的宽度和高度 |
| -storage-type type | 使用此存储类型存储像素。 |
| -synchronize | 将图像同步到存储设备 |
| -taint | 将图像标记为已修改 |
| -transparent-color color | 透明颜色 |
| -verbose | 打印有关图像的详细信息 |
| -version | 打印版本信息 |
| -virtual-pixel method | 访问图像边界之外像素的方法 |