私は、符号付きchar型とunsigned char型はすべてのプラットフォームで8ビットであるとは保証されませんが、時には8ビット以上です。 もしそうならOpenCvを使ってCV_8Uが常に8ビットであることを確認できますか? 私は8ビットのMatをとり、必要に応じてCV_8SC1要素をucharsに変換し、CV_8UC1をscharに変換する短い関数を書いています。 これはプラットフォームに依存しないことが心配です。何らかの形でコードを修正する必要があります(ただし、方法はわかりません)。8ビットシステムではないCV_8U opencvの行列
P .:同様に、32ビット整数のないマシンでもCV_32Sはどのようにしてintになりますか?
私はあなたがこれについて心配する必要はないと思う - ただOpenCVが基本的な実装を世話するようにする。 CHAR_BIT> 8のプラットフォームは、やや珍しい(通常はDSP)。 sizeof(int)> 4は多少一般的ですが、OpenCVがこれを処理することは間違いありません。 –
実際、OpenCVはia32、amd64、arm(2.3.0以降)プラットフォームでのみ動作すると約束されています。これらのプラットフォームはすべて8ビットのcharと32ビットのintを持っています。 @AndreyKamaev。 –
そして、scharからucharへの変換とviceversaについては、私が書いたコードに頼ることができると思いますか?これらのプラットフォームはすべて2を補完していますか? –