问题标签 [bpp]

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 投票
6 回答
44670 浏览

opencv - 如何将 8 位 OpenCV IplImage* 转换为 32 位 IplImage*?

我需要将 8 位 IplImage 转换为 32 位 IplImage。使用来自整个网络的文档,我尝试了以下事情:

如您所见,我真的不知道自己在做什么。我很想知道,但如果我能正确完成这项工作,我会更喜欢它。感谢我得到的任何帮助!

0 投票
1 回答
1533 浏览

.net - 如何从 RGB 初始化 48bpp 位图?

我正在用托管 C++ 编写一个解释器,用于 PPM 图像格式等。图像规范允许每个通道每像素最多两个字节的图像,或每像素 48 位彩色图像。我正在尝试读取这种格式并将其转换为 .Net 位图,但我无法使其正常工作。当我有每像素 24 位的图像时,我像这样初始化它们:

对于每像素 48 位的图像,我将 bmp 初始化如下:

但是,当尝试填充像素数据时,我无法使用 'Color::FromArgb()' 指定任何颜色值,R、G 和 B 的值大于 255。有没有办法绕过这个限制?

0 投票
2 回答
3143 浏览

macos - 从命令行减少 PNG 文件的位深度

我可以从 CLI 执行哪些命令或一系列命令来递归遍历目录树并将该树中所有 PNG 文件的位深度从 24bpp 减少到 16bpp?命令应该保留 alpha 层并且不应该增加 PNG 的文件大小 - 实际上减少会更可取。

我有一个基于 OSX 的系统可供我使用,并且熟悉该find命令,因此我非常渴望找到合适的 PNG 实用程序命令。

0 投票
1 回答
4749 浏览

internet-explorer-8 - 本地引用时 IE 中的 32 位深度 jpg 图像问题

我们有一个 webb 应用程序,它获取将上传和调整大小的图像。我们使用的调整大小库保存了所有具有 32 位深度的图片,无论之前的深度是多少。

我们有一个在线客户端,可以通过 html 文件查看图片,一切都很好。所有图片均正确显示。

问题:
我们还有一个 vb-winform 应用程序,它下载图片并在本地浏览器控件中的 html 文件中显示它们。但是这里所有图片都被拒绝(不渲染),只是红十字。如果我们在本地创建一个带有 img-tags 的静态 html 文件,它是一样的。所有具有 32 位深度的图片都显示为红叉。

如果我们以 24 位深度重新保存图片,它会再次神奇地工作。所以当然这是我们的“解决方法”,让调整大小库保存所有具有 24 位深度的图片。

摘要:
32 位 jpg 文件在 IE 中在线时显示正确,但在本地 html 文件中本地引用时不正确。(winxp 和 windows7 上的 IE8 都是如此)。在 mozilla 中打开的同一个本地 html 文件显示正常。

问题: 我用谷歌搜索了很多,但没有发现任何关于这个“问题”的信息。这是IE8中的错误吗?

0 投票
3 回答
1631 浏览

c# - 如何将大小为 19200 字节的字节数组转换为 320x240 字符的位图,其中每个字节代表 4 个像素(每像素 2 位)

我正在与仪器通信(远程控制它),
我需要做的一件事是绘制仪器屏幕。

为了获得屏幕,我发出一个命令,仪器
回复一个代表屏幕的字节数组。

以下是仪器手册关于将响应转换为实际屏幕的内容:

该命令检索用于显示的帧缓冲区数据。
它的大小为 19200 字节,每像素 2 位,每字节 4 像素,排列为
320x240 字符。
数据以 RLE 编码形式发送。
要将此数据转换为 BMP 以在 Windows 中使用,需要将其
转换为 4BPP。另请注意,BMP 文件相对于该数据是上下颠倒
的,即顶部显示行是 BMP 中的最后一行。

我设法解包数据,但现在我被困在如何
从解包的字节数组实际转到位图上。

我在这方面的背景几乎为零,我的搜索
也没有透露太多。

我正在寻找可以用来帮助我
理解如何完成这项工作的方向和/或文章。

任何代码甚至伪代码也会有所帮助。:-)

所以,总结一下:

如何将大小为 19200 字节的字节数组(
每个字节代表 4 个像素(每像素 2 位))
转换为排列为 320x240 个字符的位图。

提前致谢。

0 投票
1 回答
3901 浏览

android - 通用蓝牙加密狗可以用于支持通过蓝牙打印的打印机吗?

我尝试在我的“KodakESP-3+2445”打印机上使用蓝牙加密狗 (Advik)。我创建了一个 Android 客户端来连接到这台打印机。我为 OPP(对象推送配置文件)选择了一个 UUID,并且能够获得一个蓝牙套接字并将一个文件“socket.write”到打印机。但是,没有从打印机获得打印输出。

我尝试了其他蓝牙 UUID,例如(BIP、BPP、直接打印、SPP 等),但除了 OPP(对象推送配置文件)之外,每个配置文件的套接字连接都失败。

我在(http://store.kodak.com/store/ekconsus/en_US/pd/Wireless_USB_2.0_BLUETOOTH_Adapter/baseProductID.145081200/productID.145081300)访问了柯达商店的“KODAK Wireless 2.0 USB BLUETOOTH Adapter”,并注意到蓝牙适配器本身支持某些蓝牙配置文件(OPP、BIP 和 FTP)。

可以用普通的蓝牙加密狗连接支持蓝牙打印的打印机吗?

还是我必须购买专门的蓝牙适配器来支持这些蓝牙配置文件(OPP、BIP、FTP 等)?


为了在 Android 上实现蓝牙配置文件支持,有一个名为“Sybase-iAnywhere-Blue-SDK-for-Android”的项目,它取代了 Android 的版本,并提供了底层蓝牙配置文件和协议的所有接口。使用此 SDK 提供的 BPP 配置文件,可以使用您的 Android 手机通过蓝牙进行打印。

有关更多详细信息,请参见下面的链接:

链接 1: http ://www.sybase.com/detail?id=1064424

链接 2: http ://www.sybase.com/products/allproductsa-z/mobiledevicesdks/bluetoothsdks


我还联系了柯达技术支持团队,询问是否可以将任何通用蓝牙加密狗连接到柯达 ESP-3 打印机以启用蓝牙无线打印。

这是我收到的答案:

“对于无线打印,您只能使用柯达无线 2.0 USB BLUETOOTH® 适配器,因为您的柯达多合一打印机不支持其他蓝牙适配器。”

但是,根据我上面添加的评论,我能够使用通用蓝牙加密狗从诺基亚设备打印到柯达打印机。

警告:

我尝试使用 2 个通用蓝牙加密狗。一(Advik)不能与该设备一起使用。(此加密狗无法通过蓝牙发现发现打印机,并且加密狗的 LED 灯处于恒定的 ON 位置,而不是正常的闪烁频率)。

我尝试过的另一个蓝牙加密狗(另一个通用的现成 BT 加密狗),但是确实可以与打印机一起使用,即,可以通过蓝牙发现“找到”打印机,并且我能够从诺基亚设备打印 jpg 文件使用这个加密狗。

希望这可以帮助某人。

0 投票
1 回答
500 浏览

colors - 为什么这个 .bmp 图像中 0x1C 处的 bpp 信息有误?

十六进制编辑器

地址 1D 表示图像是每个像素 8 位,但不是,每个像素由 3 个字节(24 位)表示。

起初,我认为 Photoshop 这样做是错误的,但我发现这种格式用于所有灰度图像。

为什么 .bmp 图像不使用 4 个字节作为像素,而是使用 0 - FF 的值来描述每个像素的灰度值?

编辑:我能够回答我自己关于文件结构的问题

来自维基百科

每像素 8 位 (8bpp) 格式支持 256 种不同的颜色,每 1 个字节存储 1 个像素。

每个字节是最多 256 种颜色表的索引。此颜色表采用 32bpp 8.8.8.0.8 RGBAX 格式。

十六进制编辑器中显示的颜色表是每个像素四个字节。

远低于实际像素阵列,即每像素 8 位。

实际的像素阵列

我通过计算得出,图像是 64 x 64, 4096 像素。

像素数组从 436 开始,到 1437 结束。在十进制中,这两个数字之间的差为 4097,因此像素数组正好是每个像素一个字节。

不过,我仍然很好奇为什么灰度图像需要颜色表

0 投票
2 回答
1546 浏览

compression - 如何以 4 bpp 或更低的压缩率压缩 jpeg 图像?

我正在尝试在 Photoshop 中压缩我的 .jpeg 图像。做这个的最好方式是什么?

我现在正在计算以 kb 为单位的图像大小的 bpp,计算这是多少位。然后我以像素*像素为单位获取图像大小以获取图像中的像素数量。之后,我划分位/像素,以找出图像每个像素有多少位。

但是我怎样才能改变这个数字呢?我的猜测是改变图像是多少 kb,但我该怎么做呢?

谢谢你的帮助!!

0 投票
4 回答
5747 浏览

c# - 使用 Image 类在 c# 中丢失图像质量(减少颜色数量)

我有一个 ac# 程序,它打开一个 .tif 图像,然后提供保存它的选项。但是,保存图像时质量总是会下降。

(编辑:我在保存图像时传递了一些参数,以便质量为 100% 并且没有压缩,但实际唯一颜色的数量从 254 变为 16,即使图像属性显示 8bpp)

(EDIT2:有问题的图像是每像素 8 位的灰度图像 - 256 种颜色/灰色阴影 - 这不会发生在我测试的所有颜色都保留的每像素 24 位彩色图像中。我开始认为图像类可能只支持 16 种灰度)

我该如何避免这种情况?

这是打开图像的代码:

这是我保存图像的方式:

即使我不以任何方式调整图像大小或更改图像,我也会遇到质量损失。有什么建议吗?

0 投票
0 回答
224 浏览

c++ - 在 Ubuntu 12.04 中的 C++ 中的 graphics.h 上超过 16 种颜色

我只是想知道是否有办法在 graphics.h 中输出超过 16 种颜色?我使用的是 Ubuntu 12.04,目前只能输出 16 种颜色。我一直试图找到一种方法来做到这一点,但一直未能做到。我觉得这与传递给 initgraph 函数的参数有关。我希望能够在 Ubuntu 12.04 的 C++ 中的 graphics.h 中绘制每像素 8 位甚至 24 甚至 32 位的位图。