2017-02-12 4 views
1

Javaで画像を読んでみたいこのために、私はこのコードを使用している:-16220000、-5682000、...:MATLAB imread()のようなjavaでイメージを読み取るには?

BufferedReader br = ImageIO.read(new File('a.png')); 

をし、それがbrの値をworks.Butこのようなものです。

MATLABでは、imread()はイメージを配列に読み込み、値は0から256の範囲です。 imread()はどのように機能しますか?

答えて

1

Javaでは(CやC++のように)OpenCVライブラリを使用できます。この場合、あなたが探しているの命令は次のとおりです。

include "opencv2/highgui/highgui.hpp" 
include "iostream" 
using namespace cv; 
using namespace std; 
int main(){ 
Mat img = imread("lena.png", CV_LOAD_IMAGE_COLOR); 
    if (img.empty()){ 
    cout << "Cannot load image!" << endl; 
    return -1; 
    } 
namedWindow("image", CV_WINDOW_AUTOSIZE); 
imshow("image", img); 
waitKey(0); 
return 0; 
} 
  • Hereあなたはこれらのライブラリを追加する方法についてのすべての情報を持つWebページを見つけることができます。

  • Hereいくつかのチュートリアルとドキュメントがあります。

ただし、画像はさまざまな方法で保存できます。メモリヒープにイメージを置くと、その値を扱うことができます。したがって、イメージピクセル値をあなたが好む怒り(この場合は[0,255])で修正できます。

たとえば、[0、X]の範囲のピクセルがあり、[0,255]の範囲にマップする場合、数式はpixel_value/X*255です。 'for'を使用すると、入力画像のピクセルの総数を反復することができます。

+0

ありがとうございます。アルゴリズムを知りたいのですが、ライブラリを使用しないようにしています –

+0

ライブラリ内では、アルゴリズムを調べることができます。いずれにしても:何をするアルゴリズム?とにかく – Leos313

+0

、私はちょうど答えを編集した – Leos313

関連する問題