全く劣化せずにというわけでは有りませんが、
Photoshopにて[イメージ]→[画像解像度]を使って拡大したい大きさの倍(この場合は800x800)にします。(画像の再サンプルの箇所はバイキュービック法)
その後、[フィルタ]のぼかしやシャープを画像によって使い分けて補正した後に[画像解像度]で実際に使用したい大きさに縮小します。
この方法で普通に拡大するよりは綺麗に仕上がります。
まったく劣化しない方法というのは考えられません。
ただし画像を拡大、縮小するときに周囲のピクセル情報に基づいて新しいピクセルを作り出す補間という手法で劣化を抑えられます。補間方法として、ニアレストネイバー法、バイリニア法、バイキュービック法の3つの方式がよく知られています。PhotoshopやPhotoshopElementsではバイキュービック法による拡大がサポートされています。
理論的に言えばより少ない情報から4倍の情報を作り出すわけですから劣化の無い拡大は不可能と考えて良いです。出来るだけ原画像に近い画像イメージのままで拡大する方法を考える必要があります。画像の拡大で一般的に使われているアルゴリズムは、ニアレストネイバー法,バイリニア法,バイキュービック法の3つですが、ニアレストネイバー法は、隣接ドットをコピーするだけなので高速ですが、ドットを拡大しているだけなのでギザギザになります。バイキュービック法は3次関数を使って補完をしているので、比較的綺麗に拡大出来ますが、時間がかかる(と言っても今のCPUパワーでは誤差範囲です)ややぼやける傾向にあります。
DCTやウェーブレットを利用した拡大縮小アルゴリズムも研究されてますがまだまだ試行錯誤といったところでしょうか。
やはり難しいのですね。教えていただいたサイトをあとでゆっくり見たいと思います。どうもありがとうございました。
補間を行うことである程度ごまかすことはできますが、拡大というのはつまり元画像を引き伸ばす訳ですから、基本的に元画像より綺麗にはなりません。画像は粗くなったり眠たくなったりします。
元がベクトルデータであれば、この限りではありません。
回答どうもありがとうございました。
http://webmaster.hatena.ne.jp/1074397369
画像を劣化させずに拡大することは不可能なのでしょうか?200x200pixくらいの画像を400x400pixくらいに、劣化させずに拡大したくていろいろ調べているのですが、いい情報が.. - 人力検索はてな
それは無理でしょう。画像保存時の劣化についてはBMP等で保存すればよいのですが、もともと小さい物を拡大してしまうとモザイク状になってしまうだけで使い物にならないと思います。
「劣化」という意味がよく分かりませんが、高品質な画像拡大アルゴリズムや実装方法については、参考に掲げたURLをご覧下さい。
また、URLに紹介しているフリーソフト「藤」は、3-lobed Lanczos-windowed sinc 補間法という非常に高品質なアルゴリズムで画像拡大を行うことができます。
http://www.atmarkit.co.jp/fdotnet/dotnettips/023resize/resize.ht...
@IT:.NET TIPS 画像を高品質に拡大/縮小するには? - C#
http://www.vector.co.jp/soft/win95/art/se132646.html
Vector:藤 -Resizer- (Windows95/98/Me / 画像&サウンド) - ソフトの詳細
藤、早速ダウンロードしてみたいと思います。どうもありがとうございました。
URLはダミーです
劣化の意味がわかりませんが単純に
□■
■□
↓
□□■■
□□■■
■■□□
■■□□
にしたいだけなら、ペイント系ソフトを使わないで
Windows標準のペイントで伸縮を行えばディザリング
は行われません
通常のフォト系ペイントソフトを使うと、
なめらかに拡大します
ちと、質問から外れている答えかもしれませんが。。
PhotoShop用のプラグインです。
「ひとつの画像からどんなサイズにでも!
画質のロス無しに高品質のまま画像を拡大します。」
これが本当なら恐ろしい事ですが。
他の方が書かれてるように、補間です。
自動補間プラグインってとこでしょうか?
ダウンロードより、デモ版落とせますので試用してみてはいかがでしょうか?
現在、私は試用中ですが、やはりオリジナルとは違います。
特に画像のハイの部分が寝ぼけてしまいます。
画像の種類にもよります。
画像データにはビットマップ(ラスター)方式とアウトライン(ベクター)方式のものがあり、通常のJPEGやGIF、BMPなおの画像は全て前者の形式です。
後者はCAD等で使われている方式で、こちらであればいくら拡大縮小しても画質は劣化しません。
ラスタ・ベクタ変換が可能なソフトも存在するようなので、写真のような画像ではなくイラストのような主に線で構成される画像であれば、上手い具合に変換できるかもしれません。
劣化させずに拡大することは不可能です。
劣化を最小限に抑えつつ拡大する方法としては、画像加工の王様「Photo Shop」 が最も適しているのではないでしょうか。
Ver.7.0での場合ですが、
[イメージ]→[画像解像度] で拡大率を指定すると同時に、画像の再サンプルを「バイキュービック法」に指定して処理を行えば、ぼかしがかかってモザイクっぽさを減らすことができます。
その後、[フィルタ]→[シャープ]→[シャープ(強)] を行えば、エッジが強調され、ぼけていた画像がはっきりとなります。
画像の種類によっては、[フィルタ]→[ノイズ]→[明るさの中間値] を間に挟むとよりよいかもしれません。
画質の荒さを逆手に取り、様々なフィルタをかけてデザイン的にしてしまってもいいかもしれませんよ^^(用途によりますが…
Extensis pxl SmartScaleってのが昨年末に発売されたようですが。
これはPHOTOSHOPのプラグインなんですが、劣化させずに拡大ができるようなんですが、謳い文句通りなら画期的だと思います。
実験的に会社に購入させようかと思ってる商品です。
http://www.isl.co.jp/PRODUCT/DZP_DXS/05.html
市川ソフトラボラトリー
通常の画像拡大で使えるのかどうかは製品を持っていないのでわかりませんが、こういう技術があります。
単純な拡大では無いところをうめないといけないので、
劣化というよりかは補完の手法ということになるのだとはおもいますが、
目で見たレベルでわからない程度は十分クリアしている技術ですね。
Scalable Vector Graphics
200x200pixの画像を400x400pixにしたいとのことですので、
もし縦横それぞれぴったり2倍(214x217の画像を428x434にするなど)すれば、元通りに復元可能であるという意味で劣化無く拡大させることができます。
またSVG(URL参照)やHTMLを使って上記と同じ大きさに拡大表示させれば、元の画像に手を加えることなくかつ劣化無く表示させることができるはずです。
詳細はソフトウェアの実装によります。
URLはSVGフォーマットについてです。まだあまり普及していませんので、ご参考までに。
やはりそうなんですね。参考URLまで挙げてくださって、どうもありがとうございました。とても勉強になりました。