iOSでopencv4のライブラリをインポートして画像を解析する。
色のレンジが知りたいので実験、検証をする。
まずPreviewでHSV(0, 100, 100)で埋め尽くした画像H0_S100_V100.pngと、
HSV(350, 100, 100)で埋めたH350_S100_V100.pngを作成する。
iOSで画像を取得し、UIImageからMat形式に変換、色情報をHSVに変換し、
cv:splitで3channelに分割して任意の座標を取得する。
配列の0がH, 1がS, 2がVである。
1pixelのみだと不安なのでざっくりRect(30, 30, 100, 100)までを取得する。
for (int j=30; j<130; j++) {
for (int k=30; k<100; k++) {
int h = mat_channels[0].at<uchar>(j, k);
int s = mat_channels[1].at<uchar>(j, k);
int v = mat_channels[2].at<uchar>(j, k);
std::cout << h << "," << s << "," << v << std::endl;
}
}
・H0_S100_V100.pngでの取得結果
H:2
S:217
V:234
0(期待値)->2に、SとVもなんか統一感がない
・H350_S100_V100.pngの取得結果
H:179
S:199
V:234
175(期待値)-> 179
【推測】
また、これからわかるのはOpenCVではおそらくHのRangeが0-180であること。
S,Vはおそらく255がMaxであるということ。
・補足的に緑も取得
結果:52,178,251
0コメント