2016-05-29 3 views
2

私は複数の画像を縫い合わせており、それらの間の色の変化を改善したいと思います。ここでは、2つのイメージである:色、あなたはおそらく見ることができるようステッチ画像間の色の違いを緩和して滑らかな色の変化にする方法はありますか?

  1. http://imgur.com/nG5I0nr
  2. http://imgur.com/EZFzNeL

そしてここでは、ステッチの画像です移行は非常に貧しい。私は、彼らが

I方法(あるいは少なくともそれに近い)同じ画像をしているようにそれが見えるようにしたいと、現在それをやっている:

私が最初filter2Dを使用して継ぎ目を削除してから、マスクを取得します

シーム除去:イメージはラプラス変換を用いて、このマスクを使用して結合点の、私はそうのようなインペインティングん

kernel = np.ones((5,5),np.float32)/25 
seam_removal = cv2.filter2D(data_map,-1,kernel) 

をそしてここで私はイメージが参加点の入手マスクです、これを使用して私は修復を行います拡張のビット:

しかし、あなたが最終的な画像で見ることができるように、全くのブレンドを改善しません。

+0

最も一般的なアプローチはおそらくポアソンブレンドです(ここで見ることができます:http://www.learnopencv。com/seamless-cloning-using-opencv-python-cpp /) –

答えて

0

良いアイデアかどうかわかりませんが、Kmeansを使ってイメージの色を調整することができます。

まず、あなたは関数kmeansアルゴリズムと最初の画像を訓練し、 "クラスターの色"

clt = KMeans(n_clusters = 20) 
clt.fit(img1) 
colors = clt.cluster_centers_ 
を見つける、セカンド

image= cv2.cvtColor(image, cv2.COLOR_BGR2RGB) 

RGBにあなたの画像を変換

第3手順2でクラスタの色が見つかりました。画像2の色を変換しました。tutorialを参照してください。

最後にの2つの画像を1つにまとめるだけです。

私は第2のアプローチを持っています。つまり、両方のイメージトーンを同じトーンに変更できます。あなたは一見を受けることができますhere

関連する問題