杂乱的数组 - 数据准备

时间:2015-10-29 21:35:26

标签: c# arrays

我可以就我遇到的问题使用一些建议或帮助,但无法找到合适的算法或解决方案。

这是状态: 我有一个2D的短裤阵列:short[][] signal一个维度是所谓的渠道。所以根据问题我可能有1到128.我的测试用例有60个通道。另一个维度表示“时间” - 每秒2048个样本,样本 30秒。 所以围绕这个:short[60][61440]数组是我的来源。

我的目的是将此数据放入byte array,代表图像数据。我正在使用16bpp,因此将完成直接转换为字节。这仍然不是问题的部分。 问题是我希望克服的是我希望提供这样的数据:60个通道被转换为12x5矩阵,256个样本(1/8秒)将彼此相邻显示。然后是那些和下一个的下一个“行”...... Lemme提出了一个草图: Example

因此,如果我有一个正好30秒的样本,我会得到尺寸为3072 x 1200像素的图像。 (因此,宽度为每12像素256个样本,高度为每5像素240个样本(30x8))

有人能提供一些如何解决这个问题的线索吗? 我一直在考虑几个版本,但没有一个真正有效。

我希望能够理解我的问题。

好的,所以添加信息:

bitmap = new Bitmap(60, length, PixelFormat.Format16bppRgb565);
BitmapData bmpdata = bitmap.LockBits(new Rectangle(0, 0, 60, length), ImageLockMode.ReadWrite, PixelFormat.Format16bppRgb565);
for (int i = 0; i < length; i++)
{
   for (int j = 0; j < channel_number; j++)
      { 
         bufferList.AddRange(BitConverter.GetBytes(signalArray[j][i]));
      }
}

其中bufferList定义为List<byte> bufferList = new List<byte>();

这是我制作图像的示例60 x 61440 px(通道x时间)

我将用这张图片做什么不是主要观点。关键是我希望准备数据以获得所描述的所需图像......

0 个答案:

没有答案
相关问题