2016-03-18 60 views
1

我正在使用JavaCV,我創建了JFrame以顯示圖像的操作(單擊按鈕)。但是我正面臨着沒有合適方法的上述錯誤。 它說參數不匹配; IplImage不能轉換爲圖像和框架。這是在我面對錯誤的代碼片段:顯示錯誤:找不到合適的方法showImage(IplImage)

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           
     // TODO add your handling code here: 
     final opencv_core.IplImage image= cvLoadImage("D:\\Wallpapers\funny_download"); 
     final CanvasFrame canvas= new CanvasFrame("Demo"); 
     canvas.showImage(image); 
     canvas.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);  
    }  

的錯誤是:

error: no suitable method found for showImage(IplImage) 
    canvas.showImage(image); 
method CanvasFrame.showImage(Frame) is not applicable 
    (argument mismatch; IplImage cannot be converted to Frame) 
method CanvasFrame.showImage(Image) is not applicable 
    (argument mismatch; IplImage cannot be converted to Image) 

請問題的解決方案,因爲我工作的一個項目。

回答

1

圖像的類型爲LblImage,而showImage(args)需要類型爲Frame/Image的參數才能工作。您需要使用OpenCVFrameConverter將其轉換爲該類型。

將這兩行添加(或替換)到您的代碼中,您的程序將正常工作。在解決這個問題之前,也有幾個小時也有同樣的問題。

OpenCVFrameConverter.ToIplImage converter=new OpenCVFrameConverter.ToIplImage(); 
    canvas.showImage(converter.convert(image)); 

記得導入OpenCVFrameConverter庫

相關問題