問題があります。32ビットで得られる負の数の2進数を見つけました。最初の8ビットを除く他のすべてのビットをトリミングします。次にLSBを変更します。答えとして125が得られます。これをグレースケール画像に埋め込む必要があります。私の要件に応じて、この125を平均(4つの隣接するピクセルの合計)で追加する必要があります。これを平均に追加すると、255を超える答えが返されます。したがって、lsbを変更した後に可能性があります。私のビットはネガティブなままです。
これが私のコードです
string str1 = Convert.ToString(d[1, 1], 2);
str1 = str1.Substring(Math.Max(str1.Length - 8, 0)).PadLeft(8, '0');
char[] data = new char[str1.Length];
for (int m = 0; m < str1.Length; m++)
{
data[m] = str1[m];
}
//data[0] = '0';
string s="";
data[0] = '0';
for (int m = 0; m < str1.Length; m++)
{
s += data[m];
}
byte output = Convert.ToByte(s, 2);