我需要可視化的二進制文件(例如.EXE)等的圖像
此代碼收拾字節到的圖像中的C#語言:
如何用matlab可視化二進制文件像圖像?
var width = (int)Math.Sqrt(fi.Length * 8);
width = width + 8 - (width % 8);
var length = (int)(fi.Length * 8/width);
Func<byte, int, Color> getcolor =
(b, m) => (b & m) == m ? Color.Black : Color.White;
using (var bitmap = new Bitmap(width, length + 1))
{
var buffer = File.ReadAllBytes(exefile);
int x = 0, y = 0;
foreach (var @byte in buffer)
{
bitmap.SetPixel(x + 0, y, getcolor(@byte, 0x80));
bitmap.SetPixel(x + 1, y, getcolor(@byte, 0x40));
bitmap.SetPixel(x + 2, y, getcolor(@byte, 0x20));
bitmap.SetPixel(x + 3, y, getcolor(@byte, 0x10));
bitmap.SetPixel(x + 4, y, getcolor(@byte, 0x8));
bitmap.SetPixel(x + 5, y, getcolor(@byte, 0x4));
bitmap.SetPixel(x + 6, y, getcolor(@byte, 0x2));
bitmap.SetPixel(x + 7, y, getcolor(@byte, 0x1));
x += 8;
if (x >= width)
{
x = 0;
y++;
}
}
bitmap.Save(Path.ChangeExtension(exefile, ".tif"), ImageFormat.Tiff);
}
任何人都可以給我這個代碼的Matlab實現?
你可以上傳二進制文件嗎? –
@JeruLuke https://www.file-upload.com/eztinwfv1700 – Tavakkoli