質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

1回答

3063閲覧

Javaで画像の色空間を変換する方法についての質問です。(CMYK→RGB)

Sinmai

総合スコア8

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2018/03/30 07:34

編集2018/03/30 07:50

新米プログラマーです。

前提・実現したいこと

Javaで色空間の変換を行いたいです。(CMYK→RGB)

Java 2D APIプログラマーズ・ガイド
のページにあります。

図6-2「CIEXYZを介したマッピング」
CMYK Color → CIEXYZ Color → Device RGB Color
への変換の具体的な方法が分からなくて困っています…。

質問はシンプルに、上記図6-2の方法を教えていただけないでしょうか?
色々情報を探っていますが、なかなか参考例が出てこないので…
すみませんが、どうかよろしくお願いします。

補足情報(FW/ツールのバージョンなど)

JREはJava9です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

defghi1977

2018/03/30 08:15

カラーマネジメントシステムのことを知りたいのですか?
Sinmai

2018/03/30 08:21

返信ありがとうございます。カラーマネジメントシステムをググりました。もしかしたらそれは違います。ICCプロファイルを用いずに単にCMYK→RGBに変換したいのです。
defghi1977

2018/03/30 08:23

でもそれを行うにはまず「カラーマネジメントシステム」を正確に理解しないとうまく行きませんよ.
Sinmai

2018/03/30 08:26

あっでは、すみませんが、カラーマネジメントシステムをご教示いただけますでしょうか…。よろしくお願いいたします。
guest

回答1

0

Javaについてはもう忘れているので、ヒントとして文献だけでも


カラーマネジメントシステムの概念については(なかなかよい文献がみつかりませんが)

カラーマネージメントとプロファイル変換
http://w3.kcua.ac.jp/~fujiwara/infosci/colorman/color_manage.html

カラーマネジメントを小学生でも分かるぐらい分かりやすく解説することを目指してみた
http://www.ichigank.net/entry/2017/06/12/172620

等を.


下記の記事においてCMYKからRGBへの変換についての解決策が提示されています.
https://stackoverflow.com/questions/3123574/how-to-convert-from-cmyk-to-rgb-in-java-correctly

で、

ICCプロファイルを用いずに単にCMYK→RGBに変換したい

とありますが, 記事によればCMYK関連のICCプロファイルが下記から入手できる(ライセンス要項の確認が必要)そうなので、これらを使えばいいのではないでしょうか?
https://supportdownloads.adobe.com/detail.jsp?ftpID=3680

投稿2018/03/30 09:40

defghi1977

総合スコア4756

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Sinmai

2018/03/30 10:22

ご回答ありがとうございます。しかしやはり探している情報はICCプロファイルを用いない変換方法です。(訳あり) 変換の計算式は別として、それを行うプログラムのアプローチ方法だけでも知りたいのです…。
defghi1977

2018/03/30 10:29

無理にでもやるとすれば、どっかからCMYKからRGBなりCIEXYZなりに変換する数式を見つけてきて 1)JPEG等をデコードしたピクセルデータ配列(バイナリ)を取得し 2)ピクセル毎に色データ(CMYK)を計算式に突っ込み(RGB)を求め 3)得られた変換後ピクセルデータの配列からJPEG画像を作る といった流れになります. 要するに単なるバイナリデータの変換処理に帰着するのでJavaで出来ないはずがない. 一方の計算式についてはJavaに限ったものではないので, ICCプロファイルから抜き出したりC++やVB等のコードからかっぱらったりすればよろしいかと.
Sinmai

2018/03/30 10:37

ありがとうございます。お願いばかりで申し訳ないですが、TIFF画像で上記の1)を実現する方法をご教示いただけないでしょうか…。よろしくお願いいたします。
defghi1977

2018/03/30 10:44

TIFFのでコードは既にこの質問とは全く別の内容ですから、新たに質問して下さい. (質問と回答は一問一答が理想です.) というより、真にエポックなことでない限り大抵は簡単に文献は見つかりますよ http://www.oracle.com/technetwork/java/iio-141084.html https://blog.idrsolutions.com/2015/08/how-to-read-tiff-images-in-java/ ただ、tiffそのものが怪しいフォーマットなので、うまく行くかは判りません. 事前にツールでPNGとかに変換してからはじめたらどうです?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問