2012-01-15 73 views
0

我使用的代碼從Automatic Image Stitching with Accord.net
我改變了代碼拼接多張圖片多拼接

我選擇多個文件後,代碼爲

img1 = new Bitmap(imgName[0]); 

我更改代碼爲btnBlend

Blend blend = new Blend(homography, img1); 
pictureBox.Image = blend.Apply(img2); 
img1 = new Bitmap(blend.Apply(img2));` 

我添加了部分img1 = new Bitmap(blend.Apply(img2));所以我可以保留第一個針跡圖像作爲我的副本,這是要顯示其他圖像。

然後在btnDoItAll

for (int x = 1; x < NumOfFiles; x++) 
{ 
    img2 = new Bitmap(imgName[x]); 
    btnHarris(); 
    btnCorrelation(); 
    btnRansac(); 
    btnBlend(); 
} 

它運行後,還有完全沒有錯誤,但是當它進入循環部分在btnBlend C#掛起並顯示vshost.exe已停止工作

任何幫助來糾正?

+2

您是否踏入'btnBlend()'方法,看看_exactly_問題之前變換到平面圖像是什麼? – Nuffin 2012-01-15 13:37:35

+0

如果我沒有把'img1 = new bitmap(blend.Apply(img2))'。拼接不會被保存。也許這就是問題所在。但我應該替換它? – 2012-01-17 09:49:48

+0

_Maybe_通常可以通過在有問題的代碼處設置斷點並逐步通過_definitely_或_definitely not_澄清。這就是爲什麼我以前說過_exactly_。 – Nuffin 2012-01-17 09:57:31

回答

0

的問題是,所得到的第一拼接圖像是不平坦的,並且必須是縫製的新圖像