HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2012
0422
GrapeColor(DION)JPEGを可逆圧縮で保存16解決


GrapeColor(DION)

リンク

2012/4/22(Sun) 00:45:15|NO.46205

JPEGは可逆圧縮と非可逆圧縮どちらにも対応しています。
(非可逆圧縮の方が一般的ですが)
HSPCVでJPEGを保存すると非可逆圧縮で保存され、変色してしまいます。
そこで可逆圧縮で保存したいのですが、何か方法はありませんか?



この記事に返信する


check

リンク

2012/4/22(Sun) 05:27:52|NO.46206

JPEGの可逆圧縮は著作権の関係でフリーでは使えないとかで一般的じゃない。
HSPCVではBMPやPNGで画像が保存できるのだから、素直にそちらを使えばいいのでは。



GrapeColor(DION)

リンク

2012/4/22(Sun) 22:54:51|NO.46214

調べても良く分からなかったので質問したいのですが、BMPは無圧縮でPNGは可逆圧縮なんですよね?



ZAP

リンク

2012/4/22(Sun) 23:32:51|NO.46216

ものの三分で調べられると思いますよ。

BMP
http://ja.wikipedia.org/wiki/Windows_bitmap

PNG
http://ja.wikipedia.org/wiki/Portable_Network_Graphics



GrapeColor(DION)

リンク

2012/4/22(Sun) 23:54:40|NO.46217

hspcvやbmpsaveではbmpを保存するとき何も指定して無いので無圧縮で保存されてるんですよね?
>>ZAPさん
それは見ました
読んでもよく分からなかった
と言う意味で言ったのですが、察してもらえず残念です。



GENKI

リンク

2012/4/23(Mon) 00:51:26|NO.46218

> hspcvやbmpsaveではbmpを保存するとき何も指定して無いので無圧縮で保存されてるんですよね?

うーん、それほど難しいことでもないのですが…「可逆圧縮」「非可逆圧縮」の意味はご理解されていますか?
無圧縮と可逆圧縮をならべて聞いてるあたり心配になりました。

wikipedia以外にも解説サイトは山ほどあるはずなのでそちらの方も参考にされてみてください。wikipediaは一般的じゃない情報も含まれるので注意が必要だったりもします。
一般的に言えることですが、1つの情報源だけで判断するのは良くないですよ。というかダメダメです。

でもせっかくなのでHSP関連の範囲で…。
一般によく利用され、HSPでも簡単に扱える画像形式といえばBMP、GIF、JPEG、PNGあたりでしょうか。
これらはそれぞれの特性によって使い分けられます。
うーん…やっぱりこっから先、それぞれの特性とかはご自分で調べてみてください。
ここで書いても長くてクドくて分かりにくいものにしかなりませんし、それにもっとわかりやすい解説サイトは簡単に見つかると思います。



晩御飯

リンク

2012/4/23(Mon) 01:04:35|NO.46219

>HSPCVでJPEGを保存すると非可逆圧縮で保存され、変色してしまいます。
非可逆圧縮であるかどうかと変色するかどうかは別物なんじゃないかと思うんだけど



check

リンク

2012/4/23(Mon) 03:36:50|NO.46220

>非可逆圧縮であるかどうかと変色するかどうかは別物なんじゃないかと思うんだけど
画像の非可逆圧縮でデータ(色)の変更を行わないものはないけれどな。

GrapeColor氏はまずは可逆圧縮、非可逆圧縮についてwikipediaなりなんなりでしらべてみて、
そちらのほうの理解を深めるほうが先なのではないか。

で、氏の質問に答えると普通はBMPは無圧縮で、PNGは可逆圧縮だ。
BMPはほかにもJPEGやPNGの圧縮法でデータを圧縮できたりしたはずだが、
まったく一般的じゃないから安心して大丈夫だろう。



GrapeColor(DION)

リンク

2012/4/23(Mon) 16:11:19|NO.46224

非可逆圧縮は元には戻らなくて、可逆圧縮は元に戻り、無圧縮は読んでの字のとおり圧縮されてないのですよね?



GENKI

リンク

2012/4/23(Mon) 20:52:13|NO.46230

> 非可逆圧縮は元には戻らなくて、可逆圧縮は元に戻り、無圧縮は読んでの字のとおり圧縮されてないのですよね?

そうです。



KA

リンク

2012/4/23(Mon) 21:00:23|NO.46231

>>非可逆圧縮は元には戻らなくて
>>可逆圧縮は元に戻り
>>無圧縮は読んでの字のとおり圧縮されてない

既に、くどいほど出ていますが、その通りだと思って下さい。

実際には、他の利点・欠点や環境の問題も有りますが、それを
書いても更に混乱するでしょう。

「変色」するのかどうか、まず自分の目で確かめましたか。
多分、比較もしないで質問していると思われます。

とにかく、色々「自分の目」で確かめましょう。
何だか、食べもせずに味を聞いている、だだっ子の様ですよ。



GrapeColor(DION)

リンク

2012/4/23(Mon) 22:17:32|NO.46237

>>KAさん
ちょっと失礼ですね
ちゃんと確認した上で質問してます
変色も自分の目で見て色がおかしいと思ったので言ったのです。



晩御飯

リンク

2012/4/23(Mon) 22:19:55|NO.46238

>>非可逆圧縮であるかどうかと変色するかどうかは別物なんじゃないかと思うんだけど
>画像の非可逆圧縮でデータ(色)の変更を行わないものはないけれどな。
そうなんだけど
変色を防ぎたいから非可逆圧縮な形式をというのは少々ずれてるんじゃないかと思っただけなんだ



GrapeColor(DION)

リンク

2012/4/23(Mon) 22:20:55|NO.46239

色々検証した結果、PNGが綺麗にしかもファイルサイズをとても抑えられたのでPNGを使用しようと思います。
ファイルサイズを比べたところ、JPEGを品質100%で保存したのに比べてPNGは1/30のサイズに抑えられました。

テストしたプログラム↓

#include "hspcv.as" screen 0, 512, 512 randomize repeat 512 color rnd(256), rnd(256), rnd(256) line -1, cnt, 512, cnt await 1 loop cvbuffer 0, 512, 512 cvputimg cvsave "testfile.bmp" cvsave "testfile.png" cvsave "testfile.jpg", , 100 stop



GrapeColor(DION)

リンク

2012/4/23(Mon) 22:21:13|NO.46240

解決押し忘れました。



KA

リンク

2012/4/24(Tue) 10:28:08|NO.46245

解決している様ですが、比較用に書いておきます。
「色々検証」されているので、理解されているとは思いますが。


#include "hspcv.as" screen 0, 512, 512 randomize repeat 512 X=cnt : A=rnd(256) repeat 512 Y=cnt : B=rnd(256) color A,B,rnd(256) pset X,Y loop loop cvbuffer 0, 512, 512 cvputimg cvsave "testfile.bmp" cvsave "testfile.png" cvsave "testfile.jpg", , 100 stop



TMKL

リンク

2012/4/24(Tue) 14:49:18|NO.46246

↑やっぱjpegはひどいですね . . .



ONION software Copyright 1997-2023(c) All rights reserved.