Java

 Computer >> コンピューター >  >> プログラミング >> Java
  1. JavaとOpenCVでメディアンブラーを実装する方法を解説

    画像にローパスフィルタを適用すると、画像をぼかす(ブラー処理する)ことができます。これにより、ノイズやエッジといった高周波成分が画像から取り除かれます。メディアンブラー(中央値フィルタ)は、OpenCVが提供するぼかし手法のひとつで、画像に含まれるソルト&ペッパーノイズ(ごま塩ノイズ)の除去に特に高い効果を発揮します。この手法では、カーネル領域内にあるすべてのピクセル値の中央値を計算し、その値で中心のピクセルを置き換えます。この手法で画像をぼかすには、medianBlur() メソッドを使用します。このメソッドは以下の引数を受け取ります。元画像(ソース)と出力画像(デスティネーション)を表す2

  2. OpenCVで学ぶJavaによる画像侵食(エロージョン)処理の実装例

    モルフォロジー演算とは侵食(エロージョン)と膨張(ダイレーション)は、モルフォロジー演算における2つの基本操作です。その名の通り、モルフォロジー演算とは、画像をその形状に基づいて処理するための一連の操作を指します。侵食処理の仕組み侵食処理では、画像の境界部分から余分なピクセルが取り除かれます。侵食プロセスで除去されるピクセルの総数は、使用する構造要素(カーネル)のサイズによって決まります。erode()メソッドの使い方OpenCVでは、Imgprocクラスのerode()メソッドを使用することで、画像に侵食処理を適用できます。このメソッドは、ソース画像・出力先画像・カーネルを表す3つのMatオ

  3. OpenCVによる画像の膨張(Dilation)処理 – Javaサンプルコードで学ぶ

    モルフォロジー演算とは収縮(Erosion)と膨張(Dilation)は、モルフォロジー演算における2つの基本操作です。その名のとおり、モルフォロジー演算とは、画像をその「形状」に基づいて処理する一連の操作を指します。膨張(Dilation)の仕組み膨張処理では、画像の境界部分に新たなピクセルが追加されます。このとき追加されるピクセルの総数は、使用する構造要素(カーネル)の寸法によって決まります。白い領域が太くなるため、ノイズ除去後の小さな穴を埋めたり、オブジェクト同士をつなげたりする用途に役立ちます。OpenCVでは、Imgproc クラスが提供する dilate() メソッドを使うことで、

  4. JavaとOpenCVで画像を回転させる方法をわかりやすく解説

    JavaでOpenCVを使って画像を回転させたい場合、ImgprocクラスのwarpAffine()メソッドを使用します。このメソッドは、指定された画像にアフィン変換(平行移動・回転・拡大縮小などの線形変換)を適用するためのものです。warpAffine()メソッドのパラメータwarpAffine()メソッドは、以下の引数を受け取ります。変換元の画像(src)、変換先の画像(dst)、変換行列(M)を表す3つのMatオブジェクト出力画像のサイズを表す整数値(Sizeオブジェクト)画像を回転させる手順画像を回転させるには、まずgetRotationMatrix2D()メソッドを使って回転行列を作

  5. OpenCVとJavaで画像をアフィン変換する方法:warpAffine()の使い方と実装例

    OpenCVのImgprocクラスが提供するwarpAffine()メソッドを使用すると、指定した画像に対してアフィン変換(Affine Transformation)を適用できます。このメソッドは、以下の引数を受け取ります。ソース画像・出力先画像・変換行列を表す3つのMatオブジェクト出力画像のサイズを表す整数値(Sizeオブジェクト)画像を移動(トランスレート)させたい場合は、あらかじめ変換行列を作成しておき、その行列を他のパラメータと一緒にこのメソッドへ渡します。サンプルコード以下は、OpenCVのJavaラッパーとJavaFXを組み合わせて、画像にアフィン変換を適用して表示する完全な例

  6. Java 9のJShellで/listコマンドを使いこなす方法:各種リスト表示コマンドの徹底解説

    JShellとは?JShellはJava 9で導入されたコマンドラインツールであり、main()メソッドを用意することなく、単純なステートメントや式、メソッド、クラスなどを手軽に入力して実行できるREPL(Read-Eval-Print Loop)環境です。Javaのコード断片を対話形式で試せるため、学習やプロトタイピングに非常に便利です。JShellに入力されたコードには、それぞれ一意のIDが割り当てられます。このIDは1から始まり、JShellに入力されるコマンドごとに増加していきます。起動時に読み込まれるライブラリについても同様で、インポートごとに一意のIDが付与され、$1から始まり、読

  7. OpenCV Javaで画像を拡大・縮小する方法|resize()メソッドの使い方とサンプルコード

    画像処理ライブラリ「OpenCV」をJavaで利用する場合、Imgprocクラスのresize()メソッドを使うことで、指定した画像を簡単に拡大・縮小することができます。本記事では、resize()メソッドの基本的な使い方と、実際に動作するサンプルコードをわかりやすく解説します。 resize()メソッドの引数 resize()メソッドは、以下のパラメータを受け取ります。 元画像(ソース)と出力画像(デスティネーション)を表す2つのMatオブジェクト 出力画像のサイズを表すSizeオブジェクト 水平方向の倍率を表すdouble型の変数 垂直方向の倍率を表すdouble型の変数 処理に使用する

  8. JavaのOpenCVライブラリを使って画像にノイズを追加する方法

    OpenCVを使用すると、ガウス分布に基づくランダムなノイズを画像へ簡単に追加できます。ここでは、JavaでOpenCVライブラリを利用して画像にノイズを加える手順を紹介します。 画像にノイズを追加する手順 対象となる画像を読み込み、Matオブジェクトに格納します。 ノイズ保存用と結果保存用として、さらに2つの空の行列(Mat)を作成します。 平均値と標準偏差を格納するためのMatOfDouble型の行列を2つ用意します。 meanStdDev()メソッドを使って、画像の平均値と標準偏差を取得します。 randn()メソッドを使って、ランダムな要素で満たされたノイズ用行列を生成します。このメ

  9. 【JavaFX】2つのつまみを持つスライダー(RangeSlider)を作成する方法

    スライダーとは、連続した値の範囲を視覚的に表示するためのUIコンポーネントです。トラック上には数値が表示されており、その値を指し示す「つまみ(サム)」がトラックに沿って移動します。スライダーには最大値・最小値・初期値を自由に設定することができます。 標準のJavaFXスライダーの限界 JavaFXが標準で提供するスライダーには、つまみは1つしかありません。最小値と最大値の両方を選択できる「2つのつまみを持つスライダー」を作成したい場合は、外部ライブラリである org.controlsfx.control を利用する必要があります。 手順1:Maven依存関係を追加する このライブラリを使用す

  10. JavaFXでスライダー(Slider)を作成する方法をわかりやすく解説

    JavaFXのSliderクラスとはJavaFXには、Sliderと呼ばれるクラスが標準で用意されています。このクラスは、連続的な範囲の値を表示・選択できるスライダーコンポーネントを表します。スライダーは、数値が表示される「トラック」と、その上を移動して値を指し示す「つまみ(サム)」で構成されています。コンストラクタやプロパティを通じて、スライダーの最大値・最小値・初期値を自由に指定することが可能です。スライダーの作成手順JavaFXでスライダーを作成する基本の手順は以下の通りです。Sliderクラスをインスタンス化する — 最小値・最大値・初期値を引数に指定できます。必要なプロパティを設定す

  11. OpenCVでグレースケール画像の明るさを調整する方法(ヒストグラム均等化の使い方)

    equalizeHist()メソッドによる明るさの正規化OpenCVのImgprocクラスに用意されているequalizeHist()メソッドを使うと、グレースケール画像のヒストグラムを均等化できます。ヒストグラムを均等化することで、画像全体の明るさが正規化され、コントラストが向上します。暗すぎる・明るすぎる画像や、コントラストが低く見えにくい画像の補正に有効な手法です。このメソッドには、次の2つのパラメータを渡します。元画像(グレースケール)を表すMatオブジェクト処理結果を格納するためのMatオブジェクトサンプルプログラム次のJavaプログラムでは、カラー画像をグレースケールとして読み込ん

  12. OpenCV×Javaでカスタムカラーマップを適用する方法を徹底解説

    OpenCVには、グレースケール画像に色をつけて視覚的に分かりやすく変換できる「カラーマップ」機能が用意されています。本記事では、JavaでOpenCVを使用し、applyColorMap()メソッドによってカスタムカラーマップを画像へ適用する手順を、サンプルコード付きでわかりやすく解説します。 applyColorMap()メソッドとは Imgprocクラスが提供するapplyColorMap()メソッドは、指定したカラーマップを対象画像に適用するためのメソッドです。このメソッドには、主に以下のパラメータを渡します。 ソース画像と出力画像を表す2つのMatオブジェクト 適用したいカラーマッ

  13. Java版OpenCVのMatクラスとは?画像データを扱う基本クラスの使い方を徹底解説

    OpenCVにおけるMatクラスとは OpenCVでは、画像データは「Mat(マット)」オブジェクトとして格納されます。Matは本質的にはn次元配列であり、グレースケール画像やカラー画像のほかにも、ボクセルデータ、ベクトル場、点群、テンソル、ヒストグラムなど、さまざまな多次元データを保存するために使用される汎用的なクラスです。 OpenCVライブラリを使って画像を読み込むと、その結果は自動的にMatオブジェクトとして返されます。以下のコードのように、Imgcodecsクラスのimread()メソッドを呼び出すだけで、指定したパスの画像をMatとして取得できます。 Mat matrix = Im

  14. JavaでOpenCVのMatオブジェクトを宣言する方法【初心者向け解説】

    OpenCVにおけるMatクラスは、画像を格納するための行列(マトリックス)オブジェクトを表すクラスです。画像データはすべてこのMatオブジェクトとして扱われますが、画像ファイルを読み込むだけでなく、手動でMatオブジェクトを宣言して作成することも可能です。 Matオブジェクトを作成する手順 JavaでOpenCVを使ってMatオブジェクトを宣言するには、以下の手順に従います。 1. OpenCVネイティブライブラリのロード OpenCVライブラリを使用してJavaコードを書く場合、最初に行うべきはloadLibrary()メソッドを使ってOpenCVのネイティブライブラリをロードすることです

  15. Java 9のモジュールでServiceLoaderクラスを使うべきタイミングとは?

    Java 9のモジュールとServiceLoaderクラスJavaには、java.utilパッケージにServiceLoaderクラスが用意されています。このクラスは、クラスパスを検索することで、実行時にサービスプロバイダを自動的に検出してロードする役割を担います。ServiceLoaderが特に威力を発揮するのは、次のようなケースです。疎結合な設計:インターフェース(サービス)とその実装を分離し、呼び出し側が具象クラスを直接参照しなくて済むようにしたい場合プラグイン機構:後から追加・差し替え可能な拡張ポイントをアプリケーションに持たせたい場合モジュールシステムとの連携:Java 9以降のモジ

  16. Java 9のJShellで使える「/types」コマンドの種類と使い方を解説

    JShellとは JShellはJava 9で新たに導入されたツールで、REPL(Read-Evaluate-Print-Loop:読み込み・評価・出力・ループ)とも呼ばれます。このツールを使うと、Javaコードを記述しながらその場ですぐに実行結果を確認できるため、学習やプロトタイピングに非常に便利です。 JShell上で宣言済みの型(クラス、インターフェース、enumなど)を一覧表示したい場合は、「/types」コマンドを使用します。 「/types」コマンドの種類 「/types」コマンドには、以下のようなバリエーションがあります。 /types /types [ID] /types [

  17. Java 9のjmod形式とは?jarとの違いと重要性を解説

    Java 9では、モジュールをカプセル化するための新しい形式として「jmod」が導入されました。jmodファイルは、従来のJARファイルよりも多くの種類のコンテンツを扱えるように設計されており、ネイティブコード、設定ファイル、ネイティブコマンドなど、さまざまな種類のデータをパッケージ化できます。jmod形式はzip形式をベースにしていますが、現時点では実行時(ランタイム)でのサポートがありません。その代わり、コンパイル時およびリンク時に使用することが可能です。jmod形式のファイルは、JDKのインストールディレクトリ内の「JDK_HOME\jmods」フォルダに格納されており、拡張子は「.jm

  18. JavaFXを使用してOpenCVのMatオブジェクトを表示する方法

    JavaFXライブラリにはImageViewというクラスが用意されており、これを利用することで画像を画面上に表示できます。このクラスは、WritableImageクラスのオブジェクトを受け取る仕組みになっています。そのため、OpenCVのMatオブジェクトに格納された画像を表示したい場合は、まずそのMatをWritableImageオブジェクトへ変換し、それをImageViewに渡す必要があります。MatからWritableImageへの変換手順OpenCVのMatオブジェクトをJavaFXで扱える形式に変換するには、以下の手順を実行します。画像の読み込み: Imgcodecs.imread(

  19. Swingを使ってOpenCVのMatオブジェクトを画面に表示する方法

    Java SwingでOpenCVの画像(Matオブジェクト)をウィンドウに表示したい場合、そのままでは表示できません。Swing側で扱える形式に変換する必要があります。本記事では、その具体的な手順をサンプルコード付きでわかりやすく解説します。 ImageIconクラスとは javax.swing.ImageIconクラスは、Iconインターフェースの実装クラスの一つで、Imageオブジェクトからアイコンを描画するために使用されます。このクラスを利用すると、Swingウィンドウ上に簡単に画像を表示することができます。 重要なポイントとして、ImageIconのコンストラクタは引数としてBuff

  20. JavaでMongoDBからデータを取得する際にドキュメントをスキップする方法

    MongoDBコレクションからレコードを取得する際、skip()メソッドを使うと、検索結果の先頭から指定した件数のドキュメントを読み飛ばすことができます。Webアプリケーションのページネーション(ページ送り)機能などを実装する際に非常に便利なメソッドです。基本構文db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)JavaのMongoDBライブラリにも同名のskip()メソッドが用意されています。find()メソッドの実行結果に対してこのメソッドを呼び出し、引数として「スキップしたいレコード数」を表す整数値を渡すだけで、簡単にドキュメントをス

Total 1930 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:60/97  20-コンピューター/Page Goto:1 54 55 56 57 58 59 60 61 62 63 64 65 66