一部の Delphi コードを Python PIL に変換しようとしています。問題は二股です。まず、私は Delphi プログラマーではありません。第二に、私は今日まで PIL を使用したことがないので、いずれかの領域で問題が発生する可能性があります。
case PixelFormat of
pf32bit: PixSize:=4;
pf24bit: PixSize:=3;
pf16bit: PixSize:=2;
end;
BitCounter:=0;
for i:=0 to Height-1 do begin
Row:=ScanLine[i];
PB:=@Row[PixSize-1];
for j:=0 to Width-1 do begin
Ch[BitCounter] := (PB^ and 1);
....
inc(BitCounter);
inc(PB, PixSize);
end;
したがって、 PixelFormat 属性が各ピクセルのサイズをバイト単位で示していることがわかります。また、ScanLine メソッドは、線を表すピクセルの配列を取得することになっていることもわかりました。私が得られないのは、各ピクセルを RGB 値として視覚化する傾向があるということです。色の値の最下位ビットを抽出することに慣れています。ただし、既存のコードが何を抽出しているのかさえわからないと思います。同じ画像内の各ピクセルの RGB 値を抽出する Python PIL コードがいくつかありますが、RGB 値のタプルが以前のコードで取得した PB 変数とどのように比較されるかわかりません。いくつかの実験に基づいて、私はそれがまったく比較できないと推測しています.
前もって感謝します。