2017-10-05 3 views
0

私は塗りつぶしを使用してリアルタイムのビデオカメラで壁のペンキを入力する必要があり、画像上の白層に以下のコードの結果:OpenCVを使用してビデオカメラの壁面を着色するためのフラッドフィルの使い方は?

(void) processImage:(cv::Mat&)image 
{ 
    cv::Mat mask; 
    cv::Point seed(100,200); 
    cvtColor(image, image, cv::COLOR_RGBA2RGB); 

    cv::floodFill(image, mask, seed, cv::Scalar(255, 10, 20) ,0, cv::Scalar(2,2, 2), cv::Scalar(2,2, 2), 4); 
    cvtColor(image, image, cv::COLOR_RGB2RGBA); 
} 

は、誰も私を助けることはできますか? !!解決

答えて

1

....この変換を削除する......あなたはmask

から画像を変換してしまった

cvtColor(image, image, cv::COLOR_RGB2RGBA); 
+0

良い仕事をお試しください問題!なぜこれが問題であったかを示すドキュメンテーションを追加すると、将来的に他の人を助けることができます! :) –

+0

ありがとうございます。ここでは必要ない半均一の画像領域に色空間を追加するため、画像をある色空間から別の色空間に変換する必要はありません。 –

0

を考え出すこの

-(void) processImage:(cv::Mat&)image 
{ 
    cv::Mat mask; 
    cv::Point seed(100,200); 
    cvtColor(image, image, cv::COLOR_RGBA2RGB); 

    cv::floodFill(image, mask, seed, cv::Scalar(255, 10, 20) ,0, cv::Scalar(2,2, 2), cv::Scalar(2,2, 2), 4); 
    // Now you will get converted image from 'mask' 
} 
+1

これは質問に対する答えを提供しません。十分な[評判](https://stackoverflow.com/help/whats-reputation)があれば、[投稿にコメントする]ことができます(https://stackoverflow.com/help/privileges/comment)。代わりに、[質問者からの明確化を必要としない回答を提供する](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- i-do-代わりに)。 - [レビューより](/レビュー/低品質の投稿/ 17535792) – Dmitry

関連する問題