问题标签 [bmp]

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 投票
5 回答
5456 浏览

file - bmp文件的比较?

我想比较两个 bmp 文件。我想到了两种方法:

  1. 比较两个文件的标题以及信息标题
  2. 把bmp文件转成二进制然后做上面的比较

但是,我不知道如何开始,哪种方法更好。如果有人可以帮助我,我会很高兴!

0 投票
2 回答
6238 浏览

image - Delphi 7 中使用 Paradox 实时 BMP 到 JPG 转换

在这里和 Code News Fast 进行研究,我没有看到任何与我的问题有关的内容。我有一个应用程序,当用户单击我的应用程序中的按钮以加载它时,通过剪贴板从第三方拍照程序获取客户图片(JvDBImage)。(PhotoImage.PasteFromClipboard)。这会将图像加载并保存为位图……有时是 BIG BMP。所以,我需要一些可以保存和加载 JPG 的东西。

我试过:.. 使用 JPeg

这不会编译,因为分配是两种不同的类型。我还花了一些时间在剪贴板上工作,试图将其放入 TMemoryStream 中,但没有成功。

我的下一个尝试是将其临时保存到文件中,然后将其作为 JPG 检索,但这会很慢,而且我不确定我正在尝试做的事情是否可行。所以,与其走另一条小巷,我想我会在这里发布问题。

有问题的数据库有一个名为 Photo 的 memo(1) 字段,PhotoImage 连接到该字段。

0 投票
5 回答
5876 浏览

c - 从 bmp 文件中读取字节

如何使用 C 从 bmp 文件中读取字节?

0 投票
3 回答
35899 浏览

c# - 在 C# 中将 png 转换为 bmp

无论如何,我可以在 C# 中将 png 转换为 bmp 吗?

我想下载一张图片,然后将其转换为 bmp,然后将其设置为桌面背景。

我已经完成了下载位和背景位。

我只需要将png转换为bmp。

0 投票
2 回答
2653 浏览

jpeg - 在 BMP 到 JPEG 转换方面需要帮助

我正在编写一个 C++ 程序来将 BMP 图像转换为 JPEG。

这是我试图遵循的基本算法:

  1. 将 RGB 颜色空间转换为 Y,Cb,Cr..
  2. 将 Cb 和 Cr 向下采样 2(这意味着对于 2*2 的每个方形块有 4 个不同的 Y 值,但 1 个 Cb 和 1 个 Cr 值
  3. 将 DCT 应用于每个 8*8 像素的数据单元...
  4. 然后使用标准的 Cb 和 Cr 量化表对 DCT 系数进行量化。
  5. 做之字形排序。
  6. 使用霍夫曼编码分别对直流和交流系数进行编码。
  7. 写入正确的标头并将霍夫曼编码值写入文件...

我已经验证我正确地执行了上述操作,但我仍然遇到以下问题:

  • 生成的 JPEG 未正确显示。
  • 我制作了一个小的 8*8 24 位(颜色深度)bmp 文件,完全填充了颜色值 R=10 B=10 和 G=100...所有 64 个像素都是相同的颜色..
  • 我在每一步得到的数据如下......
    • BMP 标头大小为 40
    • 标头大小 40
    • 宽度 8
    • 身高 8
    • 飞机数量 1
    • 每像素位数 24
    • 图像尺寸 194
    • x 分辨率每米像素 2834
    • y 分辨率每米像素 2834
    • 颜色数 0
    • 小鬼颜色数 0
    • (R,B,G)=(10,10,100)的Y Cb Cr换算为(62,-29,-37)

所以让我们首先考虑 Y 分量。

Y 分量的 DCT 系数为:

在量化之后,对于 Y 分量,我得到的单个数据单元的锯齿形排序是这样的。

现在上述之字形顺序数组的霍夫曼编码为:

  • Y直流编码:00111110
  • Y ac 编码:1010(对于 ac 霍夫曼表(亮度 Y)EOB 值为 1010)
  • Cb和Cr分量的类似哈夫曼编码如下:
  • cb直流编码:11000010
  • cb ac 编码:01(对于 ac 霍夫曼表(色度 Cb,Cr)EOB 值为 01)
  • cr直流编码:110101110
  • cr 交流编码:01
  • 我得到的最终霍夫曼代码是:

    001111101010110000100111010111001 长度33

所以为了使它能被8整除,填充1就完成了。

这里每个 0 或 1 实际上是一个位,需要按原样存储在 JPEG 文件中,但由于我们不能逐位写入文件,因此总共取 8 位并转换为基数中的整数值10 并存储到一个 1 字节的字符中。

任何人都可以就我哪里出错提供任何建议吗?

0 投票
3 回答
14521 浏览

java - 如何在 Java 中从原始字节 [] 创建 BMP 文件

我有一个与相机通信并获取原始图像数据的 C++ 应用程序。然后我在 C++ 中有一个 Byte[],我想用 JNI 将它发送到 Java。

但是,我需要将原始 Byte[] 转换为真实的文件格式(.bmp 是我的首选)。如果我使用 BITMAPFILEINFO 和 BITMAPHEADERINFO 将其从 C++ 写入硬盘驱动器上的文件,我可以轻松做到这一点,但我不知道如何将整个格式发送到 Java。

然后我考虑使用 JNI 仅发送原始字节 [] 数据,然后将其转换为 .bmp,但我似乎无法在 Java 中找到任何好的库来执行此操作。

我最好的选择是什么?在 C++ 中转换图像,然后使用 JNI 发送,或者将 RAW 数据发送到 Java,然后将其转换为 .bmp?我将如何最容易地实现这一目标?

0 投票
5 回答
6392 浏览

winapi - 如何以编程方式创建位图?

我想以编程方式创建一个随机的 X 高度和 Y 宽度位图文件。

对我来说,内容无关紧要。它可能全是白色的,空的。重要的是维度。

如何使用 Windows API 做到这一点?

0 投票
3 回答
3323 浏览

32-bit - 有人可以给我提供 32 位 BMP 图像格式的规格吗?

我的应用程序在打开 32 位 BMP 图像时出现问题。一些图像具有 alpha 通道并具有一定的价值,但窗口图像查看器 picasa photoshop 似乎忽略了 alpha 通道。我怎么知道我是否应该考虑 Alpha 通道。

所以我需要一个 32bit BMP Image 的规格。任何人都可以帮忙吗?

非常感谢!

0 投票
2 回答
2122 浏览

c++ - SDL 中的动态纹理加载

我在 SDL 中打开纹理时遇到问题。我有一个功能来读取 bmp 文件,优化它们并添加颜色键:

}

效果很好。然后我像这样加载我的所有纹理,这也有效:

但我希望能够通过某种数据文件来控制这些东西。所以我写了一个函数来解析一个csv文件。然后我得到值并尝试读取 bmp 文件,如下所示:

}

这工作得很好,它记录了实际存在的文件的路径,我已经仔细检查了每个文件。但是 SDLS.LoadImage() 调用无论如何都会失败并且程序崩溃。如果我注释掉那条线,那一切都很完美,只是在瓷砖应该在的地方没有渲染任何东西。但是当我手动加载它们时文件就在那里并且可以工作,并且在我尝试调用 SDL_DisplayFormat() 之前初始化了 sdl,所以我不知道这有什么问题:(

编辑:请注意不要让人们感到困惑;SDLStuff 类使用纹理指针的缓存。这样我就可以遍历缓存,通过调用 SDLStuff 中的一个函数来释放所有加载的纹理。

0 投票
3 回答
2780 浏览

java - 如何从存储在 txt 文件中的 rgb 数据创建 bmp 文件?

我必须从两个 txt 文件创建一个 bmp 图像。第一个是 mxn 数组:

* * * * * * * *
mn
c11 c21 .. cm1
...
c1n c2n .. cmn
* * * * * * * *

* * * * * * * *
6 5
.7 .7 .6 1.0 1.2 .1
.9 .3 .7 1.1 .7 .2
1 1.1 1.2 1.3 1.7 .6
.5 .6 .5 .4 .9。 1101
2 .1 .1 .1 2.1 1.1
* * * * * * * *

第二个txt文件是一个色标,像这样

* * * * * * * *
min1 max1 r1 g1 b1
min2 max2 r2 g2 b2
...
minx maxx rx gx bx
* * * * * * * * *

* * * * * * *
0 .5 255 128 64
.5 .75 128 255 32
.75 1.25 64 64 225
01.50 5 128 128 0
* * * * * * * *

所以我必须从这两个文件中读取。我尝试使用 StringTokenizer 类从第一个 txt 文件创建一个数组,但我完全迷路了。从这两个文件中我必须创建一个 bmp 图像。有人可以以某种方式帮助我吗?