问题标签 [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.
c++ - sdl 曲面,其中 bpp = 1
2014 年 6 月 4 日
我需要(如果可能)在 SDL 1.2 中创建一个 bpp = 1 的表面。bpp 是每像素位数。
我在 100% 黑白工作,“表面”尺寸大得离谱,我的物理记忆让我瓶颈。我有 4GB 的内存,程序需要在预算机器上运行,这意味着 2-4 演出。我一直在使用 8 的颜色深度;我想我实际上浪费了大约 3/4 的记忆?我将表面保存为 .bmp 文件,该文件应该支持 bpp = 1 的黑白格式。
有什么办法可以降低 SDL 中的 bpp 还是我应该寻找替代方案?
2014 年 6 月 5 日
我在大约 39000x39000 像素、8 位色深的机器上遇到了瓶颈。因为 SDL 将表面存储在物理内存中,所以我的 RAM 用完了。处理能力不是问题,因为我正在渲染静止图像。我希望把这个分辨率加倍,但我会尽我所能。是的,我可以将图像拆分为多个文件,但因为它将在以后进行高分辨率激光打印,所以无论如何它都必须作为单个文件打开。目标是将程序打包为一个单元,而不需要额外的步骤来在另一个程序中拼接和转换图像。
SDL 和 c++ 通常似乎不支持单个位变量(不包括布尔值),因此使用 SDL 将颜色值分配给 1 bpp 像素超出了我的范围。
android - Android:将位图对象保存为 bmp (1bpp) 文件格式
基于@ben75 提出的这个问题:Android : save a Bitmap to bmp file format
我现在的问题是:如何获得每像素 1 位深度的 BMP 图像(黑白)?
c++ - 在 Qt 项目中包含 Rcpp 会导致错误影响不同的包含库
我正在使用 Qt Creator 制作一个静态库,该库将用于更大的基于 GUI 的应用程序。我以前使用过 Rcpp,但以 R 为起点 - 因此将 R 数据移动到 C++ 函数以执行操作并获得结果,我习惯于使用 R studio 进行操作。这次我开始一个 Qt 项目,我需要一个表来存储一些数据,并且 Rcpp::Dataframe 和一些向量类一样适合这项工作。在我的 .cpp 源文件中,我有 include 语句#include <Rcpp.h>
,我在网上查看并找到了 Qt 中使用的 Rcpp / RInside 库的示例——尽管它更多的是关于 RInside 而不是 Rcpp:RInside 和 Qt
似乎需要在 .pro 文件中添加一些东西才能让 qmake 做正确的事情。我在下面附加的 .pro 文件中包含了我认为 Rcpp 所需的内容。我遇到的问题是,在 .pro 文件中包含 Rcpp 内容和 .cpp 文件中的 include 语句之前,包含您也可以在下面的 .pro 文件中看到的 bpp 库不会导致编译中的任何错误或警告。在 .pro 文件中包含包含 R 和 Rcpp 的语句后,我收到许多警告和一个与 bpp 组件有关的错误,特别是:/local/yrq12edu/local/bpp/dev/include/Bpp/Numeric/NumConstants.h:96: error: expected unqualified-id before numeric constant
. 还有很多Wunused-parameter
消息,其中大部分似乎来自 bpp 内的文件。这是我第一次不得不处理这样的事情,虽然我已经阅读了很多 Qt 文档,但我仍然是一个非常新鲜的 Qt 新手。为什么在使用 bpp 之前我不会收到任何错误,但现在我已经尝试将 Rcpp 包含到我的 Qt 项目中?我应该怎么做才能采取措施解决这个问题?
编辑: 按照建议,我使用 RInside/examples/qt 中的示例 pro 文件作为起点 - 保持语句的顺序:
在我的语句中包含与 RInside 和 Rcpp 相关的语句之前或之后的 bpp 库会导致与以前相同的错误。
来自 bpp 的 .h 文件的内容是:
c++ - 使用 C++ 在 OpenCV 中创建 1bpp(每像素位)图像
我正在尝试在 C++ 中为一个项目创建一个 1bpp 图像(每像素 1 位)掩码,但是我坚持如何使用 OpenCV 做到这一点?
我正在尝试的代码是:
我不确定这是否是创建 1 bpp 掩码的正确方法。有谁知道这是否可以使用 OpenCV 或 C++?
java - Java - 每点查找本机位
我需要找到本地机器的每点位数、高度、宽度和刷新率。
我知道如何使用 java.awt.Toolkit 找到其中的大部分内容,但 Toolkit.getScreenResolution 返回一个以 Dots-Per-Inch 为单位的值。
我不能只是对(相当庞大的)整个程序进行重组以使用 DPI 而不是 BPP,而且我也不完全知道其中的区别。
java中有没有办法抓取本地显示的BPP?
resize - Imagemagick 最大颜色和缩放
我正在尝试以 2bpp 的灰度将 80x80 图像转换为 56x56 图像。
80x80 的图像是彩色的,其中可能有多达 16 种颜色。它们还具有透明背景。
我需要将它们灰度化,其中有 4 种颜色,白色是最亮的,黑色是最暗的。
每个图像都有多种颜色,但每种颜色都有 3 种颜色的调色板,一种是深色,一种是中色,一种是浅色。
我需要将所有深色的转换为深灰色,将中等的转换为浅灰色,将浅的转换为白色,同时保持图像中已经存在的黑色。
我可以成功地将图像转换为灰度,修剪画布,并使用此命令填充背景
现在我需要限制颜色,但它没有转换正确的颜色。浅色正在转换为浅灰色而不是白色。当我更改 -level 选项时,它仅适用于某些图像。
-auto-levels 也不符合我的要求。
有没有办法将中档的颜色设置为自动调平以满足我的要求?如果我解释得不够充分,我很抱歉。
这是我一直在篡改的代码,但它只适用于少数图像。使用 gamma 选项可以使其适用于更多图像,但会破坏原始工作图像。
我无法提供预期的图像,但提供与预期相似的图像。这是原始图像https://img.pokemondb.net/sprites/black-white/normal/charizard.png这里是所需的输出格式图像https://img.pokemondb.net/sprites/red-blue/normal/喷火龙.png
这是我到目前为止所得到的 https://www.pokecommunity.com/showthread.php?p=9692599#post9692599
顺便说一句, ^ 在 for 循环中,因此是变量。改变游戏和黑白阈值让我更接近,但这非常乏味,当我得到一个图像来正确转换另一个中断时。nidoking.png 是我的重映射文件。重映射工作完美,就在重映射颜色被正确分离或过滤之前。
解决了,感谢 Mark Setchell
这就是我最终做的
d - 我可以从 FreeImage 导出的最高位深度灰度图像是多少?
作为上下文,我正在构建一个需要相对极端细节的地形程序。我不希望文件很小,也不需要在监视器上正式查看,它们只需要具有非常高的分辨率。
我知道大多数图像格式都限制为 8 bpp,这是由于显示器(以合理的价格)和人类感知的标准限制。然而,2⁸ 只是 256 个可能的值,这会在重建位移中引起平台伪影。2¹⁶ 在 65,536 个可能的值上可能足够接近,我已经实现了。
我正在使用 FreeImage 和 DLang 来构建数据,目前在 Linux Mint 机器上。
然而,当我继续使用 2³² 时,我的软件支持似乎逐渐淡化。我尝试了这种形式的 TIFF,似乎没有任何东西能够解释它,要么显示完全(或大部分)透明的图像(记住我不希望任何显示器真正支持 2³² 的通道阴影),要么抱怨被无法解码 RGB 数据。我想这是因为它被假定为 RGB 或 RGBA 图像。
FreeImage 对于大多数用途都有很好的记录,但我现在想知道,我可以导出的最高精度单通道格式是什么,我该怎么做?谁能提供一个例子?在任何典型的和非家庭滚动的图像格式中,我真的被限制为 16 位吗?我知道这对于医学成像来说已经足够高了,但我敢肯定我不是第一个尝试瞄准更高目标的人,我们科学类型的人对我们的精度水平可能非常雄心勃勃……</p>
我在代码中犯了明显的错误吗?为了这种精度,我还应该尝试其他什么方法吗?
这是我的代码。
有效的 16 位 TIFF
32 位 TIFF 并没有真正起作用
感谢您的任何指示。
gcc - 使用 macOS BigSur M1 芯片的 gcc 编译错误
我最近从 Windows 切换到 mac,勇敢地拿起了带有 macOS BigSur 和 M1 芯片的新 MacBook。我正在尝试按照程序的安装指南安装 BPP ( https://github.com/bpp/bpp ),但在尝试编译可执行文件时遇到问题。
这给出了多个这样的错误:
所以我认为问题可能在于默认编译器是 Clang 12,并且在安装 gcc-11(应该适用于 M1)之后运行:
但它也给出了一个错误:
由于我不是经验丰富的编码员,而且 M1 是如此新,以至于从论坛中找到解决方案并不简单,我有点走入了死胡同。有什么建议可以解决这个问题吗?
我想这是因为 SSE3 是 x86 功能吗?
python - 使用 Bppancestor 运行多个配置文件
我需要使用多个配置文件运行 Bppancestor,我尝试了不同的方法,但都没有奏效。我有大约 150 个文件,所以一个一个地做并不是一个有效的解决方案。
运行 bppancestor 的语法如下:
我试着做:
并使用 Snakefile 尝试自动化工作流程:
有人可以给我建议吗?