问题标签 [pixelformat]
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.
android - 支持的像素格式 Android Things 0.7 DP
我正在使用 Camera 2 Api 在 Android Things (Raspberry Pi 3) DP 0.6.1 中运行一个应用程序,并成功获取格式为 PixelFormat.RGBA_8888 的图像。现在我将操作系统更新到 DP 0.7 版本,并且 ImageFormat 支持更高的分辨率,但现在我在 PixelFormat.RGBA_8888 中的分辨率为 Null。(1) 不再支持 PixelFormat 了吗?此外,我尝试切换到其他像素格式(RGB_888)并且应用程序在 imageReader.aquireLatestImage() 行中崩溃并出现此错误:<生产者输出缓冲区格式与图像阅读器配置的缓冲区格式不匹配>(2)为了在高分辨率下获得高帧速率(每秒帧数)哪种格式更适合使用?
c# - 来自 ByteArray/MemoryStream 的 BitmapImage:不支持像素格式
我正在从字节数组转换 BitmapImage,它工作正常,除了一个特定的 .tif 文件。它在 EndInit() 处给出了一个例外:
位图像素格式不受支持。(来自 HRESULT 的异常:0x88982F80)
用于将字节数组读取到 BitmapImage 的代码是:
这是什么意思?图像在 Windows 中打开得很好,所以它没有损坏或任何东西。有没有办法在 EndInit 之前将图像转换为支持的像素格式?
c++ - 保存的 Gdiplus::Bitmap 始终具有 Alpha 通道 (RGBA/ARGB)
我有一个 PixelFormat32bppARGB 格式的 Gdiplus::Bitmap (在 C++ 中),并使用以下方法将其转换为 PixelFormat32bppRGB:
如果我检查 RGB 位图的格式,它是正确的(RGB):
如果我保存位图并检查其格式(即使用 Gimp),则有第四个通道。
如何获得具有 RGB 像素格式的 png?
c# - 16 位图像的 PixelFormat
Format16bppArgb1555
像素格式为每像素 16 位。颜色信息指定了 32,768 种颜色,其中 5 位为红色,5 位为绿色,5 位为蓝色,1 位为 alpha。
Format16bppGrayScale
像素格式为每像素 16 位。颜色信息指定了 65536 种灰度。
Format16bppRgb555
指定格式为每像素 16 位;每个 5 位用于红色、绿色和蓝色分量。剩余的位不使用。
Format16bppRgb565
指定格式为每像素 16 位;5位用于红色分量,6位用于绿色分量,5位用于蓝色分量。
我从未在 Internet 上找到任何 16 位图像。
什么时候使用这些像素格式?
sdl-2 - SDL2 表面和纹理的像素格式不正确
SDL2 2.0.8。Windows 10.msys64。Radeon 卡。
我正在将 DirectX (draw) 应用程序转换为 SDL2。
在代码中,我打开一个 DirectX 窗口和一个 SDL 窗口,然后验证两者的像素格式。
因此,在同一程序中的同一台机器上,DirectX 返回一个 ARGB8888 窗口,但 SDL2 返回一个 RGB888 窗口。所以 32 位 vs 24 位???
这个对吗?如何让 SDL 返回 ARGB8888 格式的窗口?
bitmap - SDL 如何打包像素?
假设我有一个SDL_Surface
5 位像素。
包含第一个像素的字节可以包含第二个像素的一部分吗?
包含一行最后一个像素的字节是否可以包含下一行第一个像素的一部分?
c# - 如何将 ushort 16 位数组转换为图像 C#
我有一个 16 位 ushort 数组,其值范围从 0 到 65535,我想将其转换为灰度图像以保存。我尝试做的是将值写入图像数据类型,然后将图像转换为位图,但是一旦我将其放入位图数据类型,它就会转换为 8 位数据。
一旦图像被放入位图bitt,它就会变成8位,有没有办法做到这一点?谢谢
c# - 在图片控件中显示传输的 HBITMAP
我有一个相机,它有一个用 C# 开发的库和一个用 C++ 6 编写的客户端应用程序。我创建了一个 C# COM 包装器来将两个系统链接在一起,它工作得很好。
在 C# COM 包装器中,我有一个System.Drawing.Bitmap
对象,其中包含来自相机的当前帧。
在 C# COM 包装器中,我有一个函数public void GetFrameHandle(ref IntPtr hBitmap, [MarshalAs(UnmanagedType.SysInt)] ref int width, [MarshalAs(UnmanagedType.SysInt)] ref int height)
,它基本上将 HBITMAP 从帧位图获取到 C++
这似乎有点工作,我可以看到 C++ 中的图像,但由于像素格式不正确,它都是乱码。
如何从 C++ 中的 HBITMAP 确定像素格式,然后在图片控件中显示正确的图像?
我已经进行了很多调查,似乎我需要从传输的 HBITMAP 创建一个新的 BITMAP,然后从正确的像素格式创建一个新的 HBITMAP,然后使用它来填充图片控件。
我不太确定如何开始这个过程
C# COM 服务器:
C++ 客户端:
不确定如何进行此操作。
有趣的是,我从 C# 代码中保存的 frame.bmp 也是乱码。我认为这两个问题是相关的,但我不能在这里加入这些点。
感谢您提供任何帮助。
video - 为视频编码选择像素格式有什么影响?
我有一个工具,可以将各种格式的视频转换为基线配置文件中的 mp4。它在引擎盖下使用 ffmpeg。配置文件被明确指定为基线。但是没有指定像素格式。一旦我偶然发现avi
容器中的视频采用这种格式:
Stream #0:0: Video: dvvideo, yuv411p, 720x480 [SAR 32:27 DAR 16:9], 25000 kb/s, 29.97 fps, 29.97 tbr, 29.97 tbn, 29.97 tbc
当我尝试转换它时,它说默认情况下它将选择yuv422p
像素格式。然后它说基线配置文件与这种像素格式不兼容。如果我明确指定像素格式,yuv420p
那么它可以正常工作。
将所有视频转换为相同的像素格式有什么影响?不同像素格式之间的实际区别是什么?基线轮廓的其他像素格式是否不同?
c# - 从具有正确像素格式的流中创建图像
我在 .Net Core 中创建了一个 Web 服务。此服务返回像素格式为 8pp 索引的图像 png:
我想测试这个服务,所以我用这段代码创建了一个 C# 测试:
但位图img
是 Format32bppArgb。如何以原始格式 (Format8bppIndexed) 获取我的图像?