Java

Java で ImageIO を使用して jpg画像 を保存すると品質劣化する問題への対応

三国志大戦の個人的な開発でTwitterにある画像をJavaのプログラム処理でローカルPCへ保存していた。 保存した画像を見てみると、明らかに画質の劣化が見受けられたので色々と調べてみました。画質劣化はパターンマッチングにおいて致命的になりそうなので、…

JavaCV を使用して 三国志大戦4 解任済み武将カード の 武将 を判定する

kameyatakefumi.hatenablog.com前回は難しい事をして失敗したので、今回は単純にテンプレート画像を縮小してマッチングしてみる。以下、テンプレート画像のリサイズをしてマッチングしている。 public class TemplateMatching { private static final float …

JavaCV を使用して 三国志大戦4 解任済み武将カード の 武将 を 特徴点 から判定する(失敗)

kameyatakefumi.hatenablog.com前回、リストから1単位の武将データを抽出する事ができた。 今回、そこから武将を判定したい。テキストである武将名は読み取りが難しいうえに、蜀の劉備、漢の劉備、レアリティが違う劉備、性能が一緒だけど絵柄が劉備など違…

JavaCV を使用して 三国志大戦4 解任済み武将カード の1単位を判定する

kameyatakefumi.hatenablog.comこちらの続きとして 解任済み武将カード のリストから1単位を判定したい。 リストから1単位を判定できれば、あとは抽出して個別処理を行うだけになる。最初は枠を判定して、そこからゴリゴリと座標計算して~みたいな事にな…

Twitter4J を使用して 三国志大戦4 に関係のある ハッシュタグ のツイートを取得する

kameyatakefumi.hatenablog.com前回の続きではないが入力情報として使用する #三国志大戦登用 のツイートをプログラムで取得したい。 ゴールは #三国志大戦登用 のツイートから 解任済み武将カード の 画像URL を取得するまで。twitter.comJava で Twitter …

JavaCV を使用して 三国志大戦4 の 武将カードの 将器副 復活減少 を判定する

kameyatakefumi.hatenablog.com前回、解任済み武将カードを判定する事ができました。 今回は個の判定に戻ろうと思います。個の判定についてはバリバリにプログラムを書いていく事になりそうです。調べた結果 OpenCV という画像処理系のライブラリが熱いみた…

Java で Cognitive Services の Computer Vision API - OCR を利用する

kameyatakefumi.hatenablog.com勉強会に行って満足するのではなく、実際に触ってみよう。 公式に Java のサンプルがあるので助かります。Computer Vision API Java quick starts | Microsoft Docs実行してみると、ちゃんと動きました。 素晴らしい。APIを試…

パーフェクト Java EE

パーフェクト Java EE作者: 井上誠一郎,槙俊明,上妻宜人,菊田洋一出版社/メーカー: 技術評論社発売日: 2016/07/26メディア: 大型本この商品を含むブログ (1件) を見る

Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで12~14

12-1-1 デザインパターンとは オブジェクトの「生成」に関するパターン プログラムの「構造」に関するパターン オブジェクトの「振る舞い」に関するパターン 12-2 生成に関するパターン AbstractFactory 関連する一連のインスタンスを状況に応じて適切に生成…

Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで10~11

10-1-1 プリミティブ型と参照型の値の渡し方 原則として、引数オブジェクトの修正は避ける 戻り値がvoidの場合は、引数オブジェクトを修正してもいい 戻り値がvoid以外の場合は、引数オブジェクトを変更してはならない 10-2-2 可視性のグッドプラクティス (…

Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで7~9

7-1-2 文字列を結合する3つの方法 ローカル変数など、複数のスレッドからアクセスされない → StringBuilderクラス 複数のスレッドから使われる場合 → StringBufferクラス 7-1-4 複数の文字列を連結する String.joinメソッド 7-2-4 Stringクラスのメソッドで…

Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで6

6-1-1 例外の3つの種類 検査例外(Exception)おもにプログラム作成時に想定できる異常を通知するために使用します try catch 必要 実行時例外(RuntimeException)おもにプログラム作成時に想定されないエラーを通知するために使用します try catch 不要 エ…

Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで5

5.1.1 Stream APIでコレクションの操作はどう変わるか StreamAPIは「作成」「中間操作」「終端操作」の3つの操作からできています 5.1.2 ラムダ式の書き方をマスターする 関数型インターフェイスの代替として使用する (引数) -> { 処理 } ラムダ式の処理が…

Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで4

4.1.2 配列を初期化する (1)宣言時に内容が決まっていない → newで要素数のみ指定する int array = new int[10];(2)宣言時に内容が決まっている → 値の一覧を列挙する int array = { 1, 2, 3, 4, 5 };(3)宣言後に内容が決まる、もしくは引数として…

Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで1~3

2.4.1 クラスと変数はキャメルケースで,定数はスネークケースで クラス名 → 大文字始まりのキャメルケース(パスカルケース) 変数 → 小文字始まりのキャメルケース 定数 → すべて大文字で、単語をアンダースコアで区切るスネークケース 2.4.4 「不吉な匂い…

Mavenビルドの出力が文字化け対応

NetBeansでMavenビルドをすると出力される日本語が文字化けする。 前提条件 Windows 7 Pro Java version 1.8.0_121 Apache Maven 3.3.9 NetBeans IDE 8.1 対応 以下の値を環境変数へ追加する事で解消した。 変数名 _JAVA_OPTIONS 変数値 -Dfile.encoding=UTF…

univocity-parsers を試す

JavaのCSVライブラリ多すぎ。以下の希望で探してきて試してみる。 Needs と Wants ごちゃまぜだけど。 CSVファイルをサクッと読み込みたい CSVファイルの出力はしない 読み込んだ内容は JavaBeans にマッピングされて使用できる Bean Validation 機能はあれ…

JAX-WS Maven Plugin の選択について

WSDL から Javaのソースコード を生成するために wsimport を使用している。 使用しているライブラリのバージョンを上げるために調べていたら2つの groupId のもと開発が行われており混乱したので記載する。groupId は以下の2つがある。 org.codehaus.mojo…