圧縮・復元 相談室
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG0002デフォルトの名無しさん
NGNG語るべき事は何もありません
0003デフォルトの名無しさん
NGNG0004デフォルトの名無しさん
NGNGZIPアルゴリズムを完全に理解しなくたっていいでしょ。
0005かおりん祭 ◇VqKAORinK6
NGNG从o゚ー゚从< 新スレおめでとうございま−す♪
= ⊂ ) \_______
= (__/"(__) トテテテ
0006デフォルトの名無しさん
NGNG既存のライブラリを使用せずにZIPからファイルを取り出すのなら
アルゴリズムも、それなりに理解する必要はあるし
ライブラリを使用するなら環境に依存した問題で
特に難しい事ではないので環境にあったスレで聞けば問題なし
0007デフォルトの名無しさん
NGNGLhasa使えよ!
00081
NGNGVBでどうすればいい?
0009デフォルトの名無しさん
NGNG0010デフォルトの名無しさん
NGNG00111
NGNGみたいなのないの?
0012デフォルトの名無しさん
NGNG○ライブラリ
×インターフェース
○インタフェース
0013デフォルトの名無しさん
NGNG何を根拠に○×を付けてるのか教えてくれ
0014デフォルトの名無しさん
NGNG○ライーブラリ
×インタフェース
○イーンタフェース
0015デフォルトの名無しさん
NGNG0016デフォルトの名無しさん
NGNGこっちでやってくれ
http://pc3.2ch.net/test/read.cgi/tech/1014691583/l50
0017デフォルトの名無しさん
NGNG0018デフォルトの名無しさん
NGNGこれは?
らいぶらりぃ
いんたぁふぇぃす
0019デフォルトの名無しさん
NGNGお前が決めたルールか?
0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNGhttp://pc3.2ch.net/test/read.cgi/tech/1014691583/l50
0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNG廃スレなんだし、いいでしょ
0024デフォルトの名無しさん
NGNG0025デフォルトの名無しさん
NGNGあげなければ良いんじゃないの?
0026デフォルトの名無しさん
NGNG0027デフォルトの名無しさん
NGNGうわ・・
出たよ、雑談板ルール。
マジで冬厨増えたな。
00281
NGNGいろいろな圧縮ファイルに対応したいんだけど、全部の仕様
調べないとならないの。ヽ(`Д´)ノ ウワァァァン
0029デフォルトの名無しさん
NGNG馬鹿がプログラミングできると思うなよ。
0030デフォルトの名無しさん
NGNGとりあえず統合アーカイバへ逝け。
そして不可逆圧縮されなされ。
00311
NGNG0032デフォルトの名無しさん
NGNG人様が作ってくれたものを使うな
0033デフォルトの名無しさん
NGNG↑
どおゐう意味??
0034デフォルトの名無しさん
NGNG00351
NGNGWin32のCreateFile,ReadFile,WriteFile,FirstFindあたりを
用意すればいいんでしょ。ダメ?
0036デフォルトの名無しさん
NGNGYou'd like to be compress in lossless method.
0037デフォルトの名無しさん
NGNG全然ダメ。
00381
NGNGなんで(;´Д`)
0040デフォルトの名無しさん
NGNG作れない癖に簡単だと分かるのか?アフォよ
0041デフォルトの名無しさん
NGNGっつーかアレは exe をDLL化しただけっつー話も…
ライブラリっぽいのは書庫内のファイルを列挙できる部分だけのよーな。
0042デフォルトの名無しさん
NGNG00431
NGNGどこが難しいの?( ´∀`)
0044デフォルトの名無しさん
NGNGそー思うなら とっとと作ってください。
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNG放置しとけ
00471
NGNG具体的に指摘できないやつは(・∀・)カエレ!!
0048デフォルトの名無しさん
NGNG0049デフォルトの名無しさん
NGNG0050デフォルトの名無しさん
NGNG特殊化されたライブラリのインタフェースまで統合したいの?
0052デフォルトの名無しさん
NGNGついでに削除依頼も忘れずにな。
0053デフォルトの名無しさん
NGNG> zip,lzh,rar,cabみたいな一般的なやつを考えてます。
zip形式だが、Javaで、
java.util.zipパッケージ内のクラスを使うのはどう?
漏れは使ったこと無いけれど。
それか、邪道だがjakarta-antのzipタスクを使うのはどうかな。
0054デフォルトの名無しさん
NGNG0055デフォルトの名無しさん
NGNG0056デフォルトの名無しさん
NGNG005751
NGNG>java.util.zip
ストリーム(・∀・)イイ!!
>jakarta-antのzipタスク
これはよくわからなかった。
ビルドツールがZIPを生成するのかな。
>Noah
みつけました。調べるよヽ(´ー`)ノ
0058デフォルトの名無しさん
NGNG>ビルドツールがZIPを生成するのかな。
そうです。まずantの使い方を覚えるしかないかな。
Javaやるならant覚えると便利です。
antはJBuilder,Forte for Java, Eclipseからでも呼び出せますし。
でもjava.util.zipを使えるならantでZIPタスク使わなくてもいいね。
0059デフォルトの名無しさん
NGNGjava.util.zip のは
ファイル名をうにこーどで格納するため
日本語のファイル名を扱った場合問題が出る。
まぁ問題を回避するコードを書くのはそんなに手間ではないが。
ant の zip タスクも同様の問題なかったっけ?
0060デフォルトの名無しさん
NGNG> java.util.zip のは
> ファイル名をうにこーどで格納するため
> 日本語のファイル名を扱った場合問題が出る。
> まぁ問題を回避するコードを書くのはそんなに手間ではないが。
> ant の zip タスクも同様の問題なかったっけ?
半角かな文字同様、日本語のShift_JISファイル名使うなんて問題外、
って言ってるのは今では古いですか?
antにしてもJavaにしても、
ソースを全部UTF-8(Unicode)で書いてしまえばいいんじゃよ。
コンパイルオプションのencodingにUTF-8を付ける。
それでもだめならnative2ascii( or antでnative2asciiタスク )を使う。
JavaもXMLもUTF-8が標準なのだ!
........解決になってないかな?
0061デフォルトの名無しさん
NGNGあまりに単細胞なのでハッシュしても同じとは・・・恐るべし>>1
0062デフォルトの名無しさん
NGNG512b/256bの多重チェックサムらしいんだけど
0063デフォルトの名無しさん
NGNG0064デフォルトの名無しさん
NGNG0065デフォルトの名無しさん
NGNG0066デフォルトの名無しさん
NGNG☆
|\
|∴∴
|・ω・`)<おしえてよ
|o□o.
|―u'
0067IP記録実験
NGNGhttp://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0068デフォルトの名無しさん
NGNGひろしま必死だなっと・・・
0069デフォルトの名無しさん
NGNGfewfwfeefwefw
0070IP記録実験
NGNGhttp://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0071デフォルトの名無しさん
NGNG0072デフォルトの名無しさん
NGNG0073デフォルトの名無しさん
NGNG0074デフォルトの名無しさん
NGNG0075デフォルトの名無しさん
NGNG0076デフォルトの名無しさん
NGNG0077デフォルトの名無しさん
NGNGそう思うねぇ
0078デフォルトの名無しさん
NGNG0079デフォルトの名無しさん
NGNG0080デフォルトの名無しさん
NGNG0081デフォルトの名無しさん
NGNG0082デフォルトの名無しさん
NGNGあー、そっか。まぁしょうがないですね。
0083デフォルトの名無しさん
NGNG質の低い板を生かしておくのはどうしてなんでしょうか?
0084デフォルトの名無しさん
NGNG0085デフォルトの名無しさん
NGNG移住先をさがさないとな。
0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNG0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNG2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 139038人 発行日:2003/1/10
なにやら、連日メルマガだしてるひろゆきです。
そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。
重くなって落ちたりしてもご愛嬌ってことで。。。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0090デフォルトの名無しさん
NGNG世の為人の為になったことなどどれだけあっただろうか。
むしろ違法行為のほうがはるかに多いような気がしてならぬ。
0091デフォルトの名無しさん
NGNGhttp://tmp.2ch.net/download/kako/1017/10175/1017590243.html
開発者はこのスレの氏
0092デフォルトの名無しさん
NGNG0093デフォルトの名無しさん
NGNG0094デフォルトの名無しさん
NGNG400レス以上演技は続かないかな・・・
0095デフォルトの名無しさん
NGNG0096デフォルトの名無しさん
NGNG>厨房板は本当に閉鎖なのか?
初耳。
0097デフォルトの名無しさん
NGNG302 名前:心得をよく読みましょう :03/01/11 21:57 ID:A+3kp3mQ
いやそんな今時な煽りやられてもな
ただ俺は「誰もお前には聞いてねーから大人しくROMってろや低脳」って言いたいんだよw
理解出来た??
0098デフォルトの名無しさん
NGNG逆転も何もないって。
勢いで上告なんかしても一発で上告却下(門前払い)だよ。
二審も一審を支持。これに対して上告しようにも、
刑事訴訟と同様、自由に上告できるってもんでもないのです。
民事訴訟法312条 (上告の理由) 1項
「上告は、判決に憲法の解釈の誤りがあること
その他憲法の違反があることを理由とするときに、することができる。」
http://www.m-net.ne.jp/~doba/goto/hon.htm
ようするに上告しても今の制度では100%無駄。
これで完全終了ってことか。
0099デフォルトの名無しさん
NGNG0100デフォルトの名無しさん
NGNGってことは IP 記録ってのはやっぱ揉めた時用の
"当事者同士でやってね" っていうメッセージ & 仮 Flow なんですかね?
にしても ・・・うまく頭に入っていかないなぁ。。
0101デフォルトの名無しさん
NGNG0102山崎渉
NGNG0103デフォルトの名無しさん
NGNG0104山崎渉
NGNG0105デフォルトの名無しさん
NGNGどんな本を読めばよいのかわかりません。
わかる方がいれば教えてください。
0106デフォルトの名無しさん
NGNGデータ圧縮ハンドブック
http://www.pearsoned.co.jp/washo/prog/wa_pro30-j.html
0107105
NGNG想定しています。
ちなみに今は、「情報と符号化の数理」という本を読んでいます。
0108デフォルトの名無しさん
NGNG漏れは大学の図書館で借りたこの本のおかげで圧縮にはまった。
0109デフォルトの名無しさん
NGNGhttp://www.ingnet.or.jp/~kojif/mu/comp/
0110デフォルトの名無しさん
NGNGそれを読めば十分というか
それより高度な内容の本はない。
0111デフォルトの名無しさん
NGNG培風館の他の書籍で、たとえば
現代シャノン理論、植松友彦著
情報源符号化・無歪みデータ圧縮、情報理論とその応用学会編
情報理論における情報スペクトル的方法、韓太舜著
情報理論、橋本猛著
などを読むとよいだろう。
0112山崎渉
NGNG0113デフォルトの名無しさん
NGNG0114デフォルトの名無しさん
NGNGどう圧縮したらLet It Be(レットイットビー)がレルピーになるのか小一時間・・・。
聞いた奴もレルピーと聞いてLet It Beと復元する能力に小一時間・・・。
0115デフォルトの名無しさん
NGNGおまえはいいことにきがついた。
それが人間のもってる辞書圧縮機能というやつだよ
0116デフォルトの名無しさん
NGNG熟達すると、文脈だけで次に言いたいことがわかってしまう。
これを阿吽とか、ツーカーの仲とかいう。アイコンタクトもそれに入るかな。
あとは、反射神経、夢、なども人間に組み込まれた圧縮機能といえよう!
0117デフォルトの名無しさん
NGNG0118デフォルトの名無しさん
NGNGちんこ
0119デフォルトの名無しさん
NGNG□□□□□□□□■■□□□□□□□□□□□□□□□□□■■□□□□□
□□□■■■■■■■■■■■■■□□□□□□□□□□□■■■■□□□
□□■■■□□□□□□□□□□□□□□□□□□□□□□■■□□□□□
□□■□■■■■■■■■□□■□□□□■□□□■■■■■■■■■■■
□□■□□□□■■□■■□■■□□□□■□□■■■□■□□□□□■■
□□■□■■■■□□□■■□□■□□■■■□■□□□■□□□□□□□
□□■□□■■□□□□□■■■■□□□■□□■□■■■■■■■■□□
□□■□■■■■■■■■■■■□□□□■■■■□□□■□□□□□□□
□□■■■□□■■□■□□□■■□■■■□□■□□□■■□□□■■□
□□■■■■■■■■■■■■■■■□■□□□■□□□□■■■■■□□
□□■□□□□■■□■□□□□□□□□□□□■□■□■■□■■□■□
□■■□□□□■■□■■□□□□□□□□□■□□■□■■□■■□■□
□■□□□□■■□□□■■□□■■□□□■■□□■■■■□■■■■□
■■□□□■■□□□□■■■■■■□□□■□□□□□■■□■■□□□
□□□■■■□□□□□□□■■■□□□□□□□■■■■■■■■■■■
□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□
0120デフォルトの名無しさん
NGNG他のスレにこんなのあったぞ
0121デフォルトの名無しさん
NGNGどーせなら4/1になってから披露すれば良かったのに。
0122デフォルトの名無しさん
NGNGどっかのスレに作者らしき奴が居たような気がする。
0123デフォルトの名無しさん
NGNGそれでZipのアルゴリズムは”lz77->ハフマン”で正しいの?
するとどこらへんがzipとlhaは違うの?
0124デフォルトの名無しさん
NGNG0125デフォルトの名無しさん
NGNGgzip, lha のアルゴリズム的な違いはほとんどないです。
したがって、圧縮率もほぼ同等です。
ツールとしては、単体で圧縮しかできない(gzip)のか、
書庫化できる(LHA)のか、で大きく違うわけで。
0126山崎渉
NGNG0127山崎渉
NGNG( ^^ )< ぬるぽ(^^)
0128デフォルトの名無しさん
NGNG何使ってるんでしょう?
0129デフォルトの名無しさん
NGNG0130山崎渉
NGNG0131山崎渉
NGNGピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
0132デフォルトの名無しさん
NGNG0133デフォルトの名無しさん
NGNG0134デフォルトの名無しさん
NGNG0135デフォルトの名無しさん
NGNG0136山崎 渉
NGNG__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0137山崎 渉
NGNG__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0138山崎 渉
NGNG0139山崎 渉
NGNG│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0141140
NGNG0142140
NGNG何故こんな仕様になっているんでしょうか?
unlha32.dll は Unlha、UnlhaOpenArchive、UnlhaCloseArchive、etc
unzip32.dll は UnZip、UnZipOpenArchive、UnZipCloseArchive、etc
ungca32.dll は UnGCA、UnGCAOpenArchive、UnGCACloseArchive、etc
tar32.dll は Tar、TarOpenArchive、TarCloseArchive、etc
(他にも色々)
これ、使いにくいですよね。
私は、こうやって解決(?)したんですが、皆さんはどうなさってますか?
std::string api = "Unlha";
unlha = ( UNLHA )GetProcAddress( dll, ( api + "" ).c_str() );
openarchive = ( OPENARCHIVE )GetProcAddress( dll, ( api + "OpenArchive" ).c_str() );
......
(せっかくの統合アーカイバなのですから、スタティックリンクは勿体無いと思います)
更に、Unlha(...)、UnZip(...)、Tar(...)などのコマンドラインオプションの不統一が使いにくいなあと思います
unlha32.dll なら x filename directory
unzip32.dll なら -x filename directory
tar32.dll なら -x filename -o directory
これまた使いにくい。
こちらは解決が面倒で未だに手をつけていません。help me
0143デフォルトの名無しさん
NGNGそれなりに便利なんで感謝してますけど。
一応そこら辺の改善を含み、使いやすいアーカイバ関連のライブラリを作る
プロジェクトが興ったみたいだけど、まだモノは出来てない。どうなるのかな
0144140
NGNG完全に汎用的に使えるラッパクラス/アプリケーションを制作中です
ini ファイルで dll ごとに設定を与えようと考えています。
( 各dll のパス、API接頭語、各コマンドラインオプション、などなど )
クラス構成はこうなる予定です
CDLL dll ダイナミック・リンクをラップしたクラス
CArchiver CommonArchiverLibraryProject のAPIをラップしたクラス
Unlha(...)、Tar(...)などの違いを吸収します
CDLLのラッピングは一応完成。
CArchiverはラッピングのみ完成。次はコマンドラインオプション吸収を実装予定。
(その前に、ini ファイル用のクラスを作る予定)
面倒ですね。
Noah に丸投げしたほうが良いかもしれませんね。
> 一応そこら辺の改善を含み、使いやすいアーカイバ関連のライブラリを作る
> プロジェクトが興ったみたいだけど、まだモノは出来てない。どうなるのかな
とても気になります。
メーリングリスト内で興ったのでしょうか?
0145デフォルトの名無しさん
NGNGこれかと
ttp://pc2.2ch.net/test/read.cgi/software/1046607695/
あと、解凍のみならともかく圧縮まで扱うなら、iniに設定を持たせるのは
無謀かと。
・SFX作成(書庫→SFX化と直接SFX化の二通りある)
・暗号化、ソリッド、分割などのオプション機能
・tgz/tbzなど、圧縮時に拡張子が変わる時はどうするか
・ファイルリスト仕様の微妙な違い
など、仕様が異なるところがかなりあるので設定がかなり膨れ上がりそう。
0146デフォルトの名無しさん
NGNG0147デフォルトの名無しさん
NGNGまずは、ファイルをコピーするプログラムを作る。
このときに、ファイルの入出力などの取り扱いについて学ぶ。
次に、圧縮のアルゴリズムなどについて学ぶ。
それから、上記のコピープログラムに、圧縮と展開を組み込む。
0148デフォルトの名無しさん
NGNGデータ圧縮ハンドブックを買ってくる。
ソースを(コピペじゃなくて自分でキーボード叩いて)全部うつす。
コンパイルして遊ぶ。
0149デフォルトの名無しさん
NGNG並列化しにくいんですけれども、gzipなら割と簡単に並列化できるんじゃ
ないかと思いました。
i)1ブロック読んで、中の部分文字列をハッシュ表に登録
ii)ブロック内の各位置からの最長一致を求める。
iii)エントロピー符号化
という順でやれば、各ステップは並列にできるのじゃないでしょうか。
gzipだと、エントロピー符号化もブロックごとの静的ハフマンだし…
ただ、ii)では無駄な位置に対しても投機的に最長一致を探すことになりますが。
並列化できないのは、ビット列の出力ですが、この時間は大きくないでしょうし。
0150デフォルトの名無しさん
NGNGi) と ii) を分ける理由が分からん。
ハッシュ関数換えるってんなら話は別だが。
0151デフォルトの名無しさん
NGNG並列化したら、
後に出てきた部分文字列の方を先に処理することもありえますから、
その際に、前に出てきた文字列が未登録だと
うまく圧縮できません(逐次処理と結果が変わります)。
0152デフォルトの名無しさん
NGNGPPMに惚れそう
0153デフォルトの名無しさん
NGNG0154デフォルトの名無しさん
NGNGもう惚れ済みですが何か?
7-zip [ ttp://7-zip.org/ ] とか、
ppmd(1) [ ttp://packages.debian.org/unstable/utils/ppmd.html ] とか。
0155デフォルトの名無しさん
NGNGそれともbyteごとなんでしょうか。
よく見る解説ページでは"aaabcccddddff"とかって
アルファベットだったりと概念的なものばかりでよくわからんのですが…
0156デフォルトの名無しさん
NGNG一般に圧縮ではバイト(あるいはそれ以上の大きさ)が用いられる。
あと、圧縮の説明にアルファベットがよく使われるのは”見える”からだと思われ。
0157155
NGNGじゃあ何を判断にくぎってるんですか?たとえば
125 124 209 300 125 124 200 111
とかって画像データ があったとすると
125 124 が2つ
209 が1つ
300 が1つ
200 が1つ
111 が1つ
ってのと
125 124 20 が2つ
9 300 が1つ
0 111
0158155
NGNG125 124 20 が2つ
9 300 が1つ
0 111 が1つ
の二通りにできますよね。じっさいのところどうやってるんでしょうか?
0159デフォルトの名無しさん
NGNGその違いが辞書の違い、すなわち、手法の違い。
LZ'77, LZ'78 くらいでよいから、参考書で勉強すべし。
0160155
NGNGありがとうございました
0161デフォルトの名無しさん
NGNGへたれなのでアルゴリズムパクリたいのですが。
0162デフォルトの名無しさん
NGNGおまいは奥村先生の「最新アルゴリズム事典」を枕にして勉強しる。
0163デフォルトの名無しさん
NGNGおまいは奥村先生に足を向けて寝ていはいけない。
http://www.matsusaka-u.ac.jp/%7Eokumura/algo/
0164デフォルトの名無しさん
NGNG奥村先生のソースコードは落としましたがあれは本当にLZSSの基本実装みたいな形ですよね?
だもんで速度的にちょっといけてないかなーとへたれ心に思ってみてり。
因みにツリーを使わずハッシュを使うと特許に触れるんでしたっけ?
0165デフォルトの名無しさん
NGNGLHA, gzip はハッシュを使って実装されている。
つーか、へたれを自称する人は基本をおろそかにしてはいけない。
とりあえず、LHA か gzip のソースを読んでみてわからなかったら、
素直に奥村先生を拝むこと。
0166デフォルトの名無しさん
NGNGこれはどうだ?
http://www.ingnet.or.jp/~kojif/mu/comp/
0167161
NGNGへたれだからこそコピペなんだよ!
ハッシュ化するのは問題ないんですね。少し勉強して奥村先生コードに手を加えるか…。
>>166
確か最初に落としたけど研究目的以外はx(メッ)なんすヨ。
0168デフォルトの名無しさん
NGNGLZSS系列だとツリー使っても特許の地雷だらけなのよね。
ハッシュ使っても地雷だらけ、ってのは変わらんけど。
0169デフォルトの名無しさん
NGNG特許の有効期限、いつになったら切れるんだ?
0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNG不便でしようがありませんよ!
どこかに解析資料とかないでしょうか
0172デフォルトの名無しさん
NGNGこんなのとか。
ttp://www.stuffit.com/win/sdk/index.html
0173デフォルトの名無しさん
NGNG長いよねぇ
0174デフォルトの名無しさん
NGNGありがとう
登録制なのか…やだなぁ
0175デフォルトの名無しさん
NGNGこの本とかはどうだろ?
0176C+++
NGNG激しくワロタ(笑)。
0177デフォルトの名無しさん
NGNGttp://www.speakeasy.org/~russotto/arseniccomp.html
0178デフォルトの名無しさん
NGNG海外にいなかったっけ?
0179デフォルトの名無しさん
NGNG1/100に圧縮できるってヤツか?
0180デフォルトの名無しさん
NGNG0181デフォルトの名無しさん
NGNG0182デフォルトの名無しさん
NGNG0183デフォルトの名無しさん
NGNG0184デフォルトの名無しさん
NGNG0185デフォルトの名無しさん
NGNG(コードサイズが小さくて、
符号化・復号化だけで余計な機能がなく、
復号が速いやつ)
ない?
アプリにこっそり組み込んで使いたいんだが。
0186デフォルトの名無しさん
NGNGZeoSyncキターw
懐かしいな。
0187デフォルトの名無しさん
NGNG奥村LZSSでもつかっとけ
0188デフォルトの名無しさん
NGNG0189デフォルトの名無しさん
NGNGMS-COMPRESSを呼び出すのが簡単かつ確実
0190デフォルトの名無しさん
NGNGWinでもAIXでも使えるのをおながいします。
0191185
NGNGちょっと遅いけどすげー小さいので。
ちなみに190は偽物です。
0192デフォルトの名無しさん
NGNG0193デフォルトの名無しさん
NGNG7行のだと、Huffman, rangecoder, LZ77系, RLEなら、
それぞれ2つ以上の実装が出ていたはず。
LZ78とかBPEとかもあった。
0194デフォルトの名無しさん
NGNGこれかな?
http://www.isl.cs.gunma-u.ac.jp/~shingo/make/7line/7line.html
0195デフォルトの名無しさん
NGNG0196デフォルトの名無しさん
NGNGの取れた圧縮アルゴリズムってなんでしょう?
XML → 無駄なコード削除 → ブロックソーティング → MFT → ランレングス
でやってみたんですが、圧縮率は満足なもののブロックソーティングが遅すぎて
使えませんでした。もちろん、高速化は可能だと思うのですが…
0197デフォルトの名無しさん
NGNGまずbzip2で試してみて、それでも遅ければブロックソートは向いてない、
十分な速度ならブロックソートの高速化が甘いかと。
ブロックソートの高速化についてはこちらなど
M.Hiroi's Home Page ttp://www.geocities.co.jp/SiliconValley-Oakland/1680/
white page ttp://homepage3.nifty.com/wpage/
0198じんばん
NGNGどこか良いサイトあれば教えてください。
jarでなくてgzipの話です、念のため。
0199デフォルトの名無しさん
NGNGいきなりJavaソースを探すのではなく、
C/C++をJavaに翻訳することを薦める。
0200じんばん
NGNGjavaには、圧縮関連のインタフェースが提供されているはずなのですが。。
圧縮クラスだとか圧縮メソッドのような。。
0201デフォルトの名無しさん
NGNG> 標準的な ZIP ファイル形式および GZIP ファイル形式を読み取ったり、書き出したりするためのクラスを提供します。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/zip/package-summary.html
0202じんばん
NGNG0203じんばん
NGNGttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=5688&forum=12
0204デフォルトの名無しさん
NGNGストリーミングに向いた、圧縮方法を教えてください。
0205デフォルトの名無しさん
NGNGうぐっ!
書き損ねた。>>204は携帯電話によく搭載されてるSMAFみたいな
奴を考えてます。
0206デフォルトの名無しさん
NGNGあえて言うなら、ストリーミングにはデータ欠損が付き物なので
データが足りなくても質を下げて再生できるようなフォーマットが必要だろう。
最初の数パケットで数フレーム分を荒く再生できるとか。
0207デフォルトの名無しさん
NGNGすると、圧縮しないほうがいいってことでしょうか?
0208デフォルトの名無しさん
NGNGアルゴリズムよりも実装の問題だという事。
圧縮は当然する。
しないと送受信が間に合わないでしょ。
といっても具体的に知っている訳じゃないので一般論でしかないけどね。
とりあえずmpegとか調べてみては如何かな?
0209デフォルトの名無しさん
NGNG「携帯 ムービー フォーマット」でググればそれらしい形式が出てくるんだから
更にそれらのフォーマットを調べれば済むんじゃないかなぁ。
0210デフォルトの名無しさん
NGNGbackup[1]という名前のフォルダの中に次のようなファイルが入っているとします。
regcopy.exe
help.chm
online.htm
readme.txt
別のbackup[2]というフォルダの中にもbackup[1]と全く同じファイルが入っているとします。
このbackup[1]とbackup[2]のフォルダをそれぞれLZH形式に圧縮します。
圧縮したこれら2つのファイルのバイナリを比較したところバイナリが一致しません。
上記4つの各ファイルのバイナリは一致しているのに、なぜ圧縮すると圧縮ファイルのバイナリが一致しなくなるのでしょうか?
宜しくお願いします。m(゚д゚)m
0211デフォルトの名無しさん
NGNGフォルダごと圧縮してるなら、フォルダの名前が違うから。
0212210
NGNGいや、最初はそれが原因かと思ったので、フォルダ名を同じにして圧縮してみたんですが、
やはりバイナリが一致しないんですよ。
どうやら、フォルダ名はバイナリに反映されないようですね。
今度はZIP形式に圧縮し直して試してみたんですが、やはりバイナリが一致しません。
うーん、、何故?なぜなんだろう。。
0213デフォルトの名無しさん
NGNGタイムスタンプも統一(偽造)してやってみて。
0214210
NGNGレスありがとうございます。
タイムスタンプは一致させているんですが、やはりバイナリが一致しません。
どうやら、ファイルの圧縮順が違ってみたいです。
例えば、backup[1]では、
regcopy.exe→help.chm→online.htm→readme.txt
のような順で圧縮処理しているのに対し、backup[2]では、
help.chm→online.htm→readme.txt→regcopy.exe
のような順で圧縮処理しているようなのです。
つまり、圧縮書庫内に格納されているファイル順が異なるため、バイナリが一致しないようなのです。
そこで、フォルダ内のファイルを名前順で並べかえてから圧縮したのですが、圧縮順は変わらないままです。
何か良い方法はないものでしょうか?
OS:WinME
アーカイバ:Easy圧縮
0215デフォルトの名無しさん
NGNGそれを制御するのはWindowsでは難しいだろうな。
ところで個人的には「どうしてそうしたいのか」が不明なんだが。
0216210
NGNGなるほど、やはりファイルシステム依存でしたか。
アーカイバ側の設定で名前順でソートしたらバイナリ一致確認できました。
>ところで個人的には「どうしてそうしたいのか」が不明なんだが。
書庫内の格納順が名前順になってないと、解凍後に名前順に並べ替えないといけないんですよ。
これって気になりませんか?
0217デフォルトの名無しさん
NGNG内部処理がどうなってようが気にならんがね。
実際FATだかNTFSだかがどんな順番で格納してるかなんか
気にしてないだろ? もちろんファイラで一覧表示するときは
なんかの基準でソートされてないと見づらいけどね。
アーカイブも同じだと思う。実際にどの順で格納されてようが
別に気にならないな。中に何が入ってるか表示するときに
ソートすればいいだけの話だから。
0218デフォルトの名無しさん
NGNG勝手に並べ替えされると「あぁ、名前順に格納されてるのか」とか考えるバカが出るような気もするが。
0219デフォルトの名無しさん
NGNGLZH圧縮ファイルに出力したいんだけどやっぱハフマン法とか勉強しなきゃできないん?
0220デフォルトの名無しさん
NGNGzlibならそういう使い方もできるんだが、LHAでは聞いたことないな。
LHAという縛りがあるなら勉強してクローン作るしかないかもしらん。
LHAじゃなくても良くて単に圧縮したいだけならzlibが使えると思う。
0221デフォルトの名無しさん
NGNGレスサンクス
LZH圧縮しる!っていわれてるんで参考書でも買ってきて勉強しマフ
0222デフォルトの名無しさん
NGNGunlha32.dll で UnlhaCompressMem とか使えばできなかったっけ?
0223デフォルトの名無しさん
NGNG情報サンクス
ちょっと試してみますた
メモリ圧縮は可能だけど解凍ソフトで解凍してもファイルが出来ないよ・・orz
やはり自作しるしかないのか・・はぁ・・
0224223
NGNGこれでデータ長がDWORDの設定範囲を超えるデータを
1ファイルにまとめることが可能なら・・・これで十分いけそうでつ
>>220さん
>>222さん
ありがたう!
0225デフォルトの名無しさん
NGNG解凍後にいろいろ処理をしたいのですが、既存のをそのまま使うのは
無理そうなんです。
解凍後に指定のEXEファイルを実行、というのでは解凍中のエラー時の
処理などがカスタマイズできないので使えないんです。
0226login:Penguin
NGNGmakeとかantとかを強制させるとか
0227デフォルトの名無しさん
NGNGinstallshield(?)を参考にしる
0228デフォルトの名無しさん
NGNGプログラムの参考にはならないだろうが、
DGCAが、自動解凍後に任意のプログラムを実行する機能を持っている。
0229デフォルトの名無しさん
NGNGそんなんlhaだって持ってるぞ。
っつーか普通は持ってるんじゃないか?
0230デフォルトの名無しさん
NGNG% lha --version
lha for unix version 1.14g
% lha
...
LHa for UNIX V 1.14i Modified 2000 Tsugio Okamoto
ごめん。よくわかんない。
DOS版にはそういう機能があるの???
0231デフォルトの名無しさん
NGNGそもそもunix版では自己解凍書庫つくれんだろーが。
0232デフォルトの名無しさん
NGNGsharの仕組みを導入して何でも自己解凍化してしまえばok
0233デフォルトの名無しさん
NGNG0234デフォルトの名無しさん
NGNG0235デフォルトの名無しさん
NGNG0236デフォルトの名無しさん
NGNG0237デフォルトの名無しさん
NGNGそれに圧縮率だけなら既存のでもシャノン限界に肉薄しているのがあるし、
圧縮速度やメモリ効率や使い勝手も優れてないとこれから普及するのは難しい。
0238デフォルトの名無しさん
NGNG圧縮したり,展開したりする必要があるんだが,
統合アーカイバプロジェクトにあるような
圧縮展開ライブラリは「ことごとく」,
ファイルから入れて,ファイルに出すような,
API しか用意していない.
バッファで使えるようなライブラリ知らない?
0239デフォルトの名無しさん
NGNG少なくとも unlha32.dll と unzip32.dll はメモリから圧縮、解凍できるが。
っつか、>>222 で既出。
0240デフォルトの名無しさん
NGNGlnlha32.dll では圧縮したデータを直接バッファに
出すことはできない
unzip32.dll では圧縮そのものができない
0241デフォルトの名無しさん
NGNG0242デフォルトの名無しさん
NGNG例えばバイナリは1バイトで必ず0〜255の値しか取らないじゃないですか。
それを圧縮したら戻らなくなっちゃう気がするんですけど…
0243デフォルトの名無しさん
NGNGまずはこの辺読めば?
ttp://homepage1.nifty.com/snap/room03/c02/comp/comp.html
0244デフォルトの名無しさん
NGNGそれなら、バッファにあるデータをバッファに圧縮、展開と書かないと分からないよ。
展開はともかく、圧縮データをバッファに吐くのは
圧縮できなくてデータが増える事も考慮すると、ちと面倒くさいね。
0245デフォルトの名無しさん
NGNGなんとなくわかりました。ありがとうございます。
0246デフォルトの名無しさん
NGNGほとんどわかってないぞお前。
0247デフォルトの名無しさん
NGNGそこはLZ78符号 ≒ LZ77符号 >> 算術符号 > ハフマン符号 >> 連長符号
みたいな比較をしていて解説としてはちょっとおかしいぞ。
LZ符号と算術・ハフマン符号を比較するのは無理がある。
0248デフォルトの名無しさん
NGNG> 展開はともかく、圧縮データをバッファに吐くのは
> 圧縮できなくてデータが増える事も考慮すると、ちと面倒くさいね
ん? 意味わからん
ちぢまない最悪のケースを考慮して,
バッファを用意させればいいだけの話じゃないか
0249デフォルトの名無しさん
NGNG最悪のケースを調べるのが面倒くさいって事。
deflate でやるなら deflate のフォーマットを調べないと最悪のケースはわからん。
適当にやると不具合が出たときに泣きを見ることになる。
0250デフォルトの名無しさん
NGNG解凍速度優先型らしいけど、ホントにゲームに使ってる方いらっしゃる?
0251デフォルトの名無しさん
NGNG日本語を含む文字列(char型の配列)を圧縮して、
出力がバイナリでない圧縮方法はないですか?
ランレングス法は通常のテキストだとあんまり意味がないもんで。
0252デフォルトの名無しさん
NGNGそんな特異な圧縮方法はありそうにない。
ってか、ほとんど仕様が決まってるじゃん。自前で用意しる!
0253デフォルトの名無しさん
NGNG君は>>242だな?
>出力がバイナリでない
意味が良く分からん。
もう少し圧縮について勉強しなさいな。
0254デフォルトの名無しさん
NGNGLHAやzlibでの、LZ系の高速化手法について詳しく述べられている
サイトってございませんでしょうか?
0255デフォルトの名無しさん
NGNGサイトは知らないが、論文はいくつかある。
0256デフォルトの名無しさん
NGNGランペル・ジブ系一般に対する高速化の手法ではなくて、
LHAやzlibが採用してる手法について知りたいってこと?
後者なら、LHAについては1970〜80年台の古い雑誌に解説記事が載ってたな。
zlibはソース見るのが早いかも。いずれにしても、奥村先生のとこの記述がとっかかりになるはず。
ttp://oku.edu.mie-u.ac.jp/~okumura/map.html
前者だと、論文とか特許文書あたりの範疇になるのかな。これはさすがによくわかんね。
0257デフォルトの名無しさん
NGNG>>256
後者の方です。
0258デフォルトの名無しさん
NGNGどなたかご存知でしたら教えてください。
当方VC6.0で圧縮モジュールを作成したいと考えています。
0259デフォルトの名無しさん
NGNG0260デフォルトの名無しさん
NGNGhttp://www.gzip.org/
0261デフォルトの名無しさん
NGNGttp://www.newforeskin.biz/CI/CIchart.htm
0262デフォルトの名無しさん
NGNGなので、見つけたら即買ってしまう・・・
0263デフォルトの名無しさん
NGNGオレは読んだこと無いけど(苦笑)。
Cが読めるなら、理解できるんじゃないかな。
オレはCを読めないので本当のトコは知らないけど(苦笑)。
アルゴリズムだけなら、上の本の作者の若い片割れの
ウェブサイトに、基本的にトコがカンタンに載ってるよ。
オレはそこ読んでLZSS+ハフマンのアーカイバを作った。
0264デフォルトの名無しさん
NGNG理論を解説した文書が欲しければ論文を読むか、情報理論の教科書を探せ
手法を解説した文書ともども、amazonで買える
そもそもの大問題として、LZそのものの理論解析が実はあまり進んでいないという
確率推定問題に置き換えての証明やらは腐るほどあるが、派生手法に適用が困難
0265は ◆cplnFO9T0I
NGNG0266デフォルトの名無しさん
NGNGソースプログラムを読もう
アルゴリズムを知りたければRFCを読めばおk
0267デフォルトの名無しさん
NGNGコードそのままでメークできてしまった。色々いじって楽しもうと思ったのになあ・・・。
0268デフォルトの名無しさん
NGNG0269デフォルトの名無しさん
NGNGgoogleで検索することをオススメします
0270デフォルトの名無しさん
NGNG0271デフォルトの名無しさん
NGNG( ゚ Д゚)
0272デフォルトの名無しさん
NGNGもうゲットしちゃった(*´д`*)
0273デフォルトの名無しさん
NGNG0274デフォルトの名無しさん
NGNG氏ね
0275デフォルトの名無しさん
NGNGあとでまた特許云々…とかなったりしないよね?
0276デフォルトの名無しさん
NGNGUnisysが持ってた特許は失効した。
> あとでまた特許云々…とかなったりしないよね?
可能性はある。
実際に Unisys が関連特許で gif からライセンス料を徴収を続けるかも、って記事もあったし。
0277275
NGNGマジですか('A`)
携帯アプリのデータ圧縮に使おうと思ってたんだけど、やめといたほうがいいのかな…。
0278デフォルトの名無しさん
NGNG>>276 は脅しただけだと思うが。
まぁ、油断はしない方がいいやね。
lzwってsuffix treeが必要になるから携帯でやるとメモリきつくない?
0279デフォルトの名無しさん
NGNG0280デフォルトの名無しさん
NGNG親ノードのインデックスだったらわかるけど。
最近勉強してなかったからなぁ。
0281デフォルトの名無しさん
NGNGlzwなら、親ノードのインデックスと1字のデータ(ある意味、子ノードのインデックス)ってことだよ。
0282デフォルトの名無しさん
NGNG>>276 が言ってるのと同じかはしらんけど、こんなん見つけた。
http://pcweb.mycom.co.jp/news/2004/06/21/001.html
> 現在、米UnisysはLZWの技術に関連する2件の特許を出願中であり、
> 近い将来において特許成立が見込まれると発表している。
> 画像フォーマットとの関係は不明だが、その内容次第では
> 今回解決に至ったGIF問題の再発も懸念される。
0283275
NGNG作ってる間に関連特許取られたら怖いなー。後々使いまわす予定のコードだし。
短いコードで圧縮率高いから使いたかったんだけど…lzw以外でそういう圧縮方法ってないよね?
0284デフォルトの名無しさん
NGNGこっちも特許ヤバそうだけど。
0285281
NGNG要は、辞書X番の情報は「辞書Y番の子である」と「その後ろにつく1文字」ということなんで、
ノードの持つデータと親のインデックスだけでいいんだな。
0286デフォルトの名無しさん
NGNG0287デフォルトの名無しさん
NGNG拠点を構え、業績急上昇中!未経験者大募集中!の
ソフトウェア開発会社
グリーンシステムを応援するHPです。
http://www.geocities.jp/grs_hp/
応援するスレはこちら!
http://school4.2ch.net/test/read.cgi/job/1077432387/
最高の会社にするため、みんな頑張ってます!
0288デフォルトの名無しさん
NGNGhttp://pcweb.mycom.co.jp/news/2004/11/06/100.html
の記事で、
「SlipStreamが開発したWebやEメールのアクセラレーション技術である。同社独自のデータ圧縮アルゴリズム」
とあるけど、
またまた、何かのパクリなのか?
こういう紛いもんみたいな新技術の話って、よくもまあホイホイ出てくるよなぁ。
0289デフォルトの名無しさん
NGNGJavaのZGIPOutputStreamクラスでgzip形式で圧縮が可能なのですが、
同じファイルでも、プログラムで圧縮プログラムを実行するたびに、
出力された圧縮ファイルが異なります。サイズも中身もです。
解凍すれば、同じデータであるので、別に良いのですが、
会社で資産管理作業を行う際に面倒です。
そもそも、gzipや他の名のある圧縮アルゴリズムの
仕様なのでしょうか?
0290デフォルトの名無しさん
NGNG適当な圧縮ソフトで実験してみれば?
0291デフォルトの名無しさん
NGNGサイズ400メガ
0292デフォルトの名無しさん
NGNGとりあえず吊っとく?
0293デフォルトの名無しさん
NGNG吊っとく・・わからん
0294デフォルトの名無しさん
NGNG0295デフォルトの名無しさん
NGNGhttp://www.amazon.co.jp/exec/obidos/ASIN/4797325526/ref=pd_bxgy_img_2/249-1522108-5041925
圧縮アルゴリズム―符号化の原理とC言語による実装 C magazine
↑は購入を決めたのですが、他にお勧めの本はありますか?
できればプログラムのソースの解説については少なくて
アルゴリズムの解説に重みを置いている本を読みたいのです。
上記の本は知人から見せてもらって
自分のそばに置こうと考えたので購入することにしました。
0296デフォルトの名無しさん
NGNG図解入門 よくわかる最新データ圧縮技術の基本と仕組み
―情報圧縮技術とアルゴリズムの基礎講座
How‐nual Visual Guide Book
こちらも候補に入れております。
0297デフォルトの名無しさん
NGNG0298デフォルトの名無しさん
NGNG「LHAとZIP―圧縮アルゴリズム×プログラミング入門」
http://www.amazon.co.jp/exec/obidos/ASIN/4797324287/
0299デフォルトの名無しさん
NGNGその本は 1/3 が LHA の作者の一人の奥村氏による昔話とアルゴリズム解説、
2/3 が DeepFreezer作者による LHA の独自実装のソースと解説。
ついでに ZIP も実装できちゃいましたって感じの本だよ。
アルゴリズムの解説が読みたいっていう >>295 にオススメできるような本じゃない。
仕様を網羅してるか、という点で見ても LHA も ZIP も中途半端だし。
0300デフォルトの名無しさん
NGNG圧縮アルゴリズムのさわりと、プログラミングの入門って感じの本でした。
ていうか、サブタイトルがそのまんまなんで、タイトル通りの本ってことだけど。
0301295
NGNG―情報圧縮技術とアルゴリズムの基礎講座
How‐nual Visual Guide Book
圧縮アルゴリズム―符号化の原理とC言語による実装 C magazine
上二つの本を購入することにしました。
みなさんありがとうございました。
0302デフォルトの名無しさん
NGNGよくわかる〜 はさわりしか書いてないので、物足りなくなったら原論文を当たるとよいでしょう
ただ、オリジナルの論文では正確なところがわからないこともあるので、
解説的な論文を読むのもいいでしょう
0303デフォルトの名無しさん
NGNG0304デフォルトの名無しさん
NGNGよかったけど、今は絶版らしい。
0305デフォルトの名無しさん
NGNGttp://www.cqpub.co.jp/hanbai/books/36/36721.htm
漏れが圧縮にハマるきっかけになった名著。絶版でなければ、>>301で不足してる分はこれが補ってくれると思うんだが…
復刊.comでリクエストするか、それとも改訂版をリクエストするか?
0306デフォルトの名無しさん
NGNG0307デフォルトの名無しさん
NGNGhttp://scs.dip.jp
情報通信に関する学術的および技術的な議論の場を
提供することを目的としています。
勉強するためのテキストの紹介、技術的な質問、
産業界の動向、議論などご自由にお使いください。
0308デフォルトの名無しさん
NGNG小さくて展開の速い圧縮ありませんか?
圧縮する対象は主にexeとかの実行イメージです。
今はひそかにスライド辞書(LZ77)を使ってますが
アルゴリズム同じだと特許に触れるんでしょうか。
せっかく苦労して作ったのにやだなあ。
0309デフォルトの名無しさん
NGNG子供は早く寝ろ
0310デフォルトの名無しさん
NGNG0311デフォルトの名無しさん
NGNG富士通はLZ77+ハッシュ使うとダメって言ってるし、
LHA作者の奥村教授はLZ77+ツリー使うとダメって言ってるが。
0312デフォルトの名無しさん
NGNGLZ77のみ :
って事
0313デフォルトの名無しさん
NGNGは○
0314デフォルトの名無しさん
NGNGハフマンって圧縮以上に見た目のランダム性上がるから
使いでがあるんですが。
というかLZ77のみは可ですか。
とりあえずLZ77だけでいきます。
こういう思いつきそうな事を特許で縛るのって卑怯ですよね。
そういえば、バイオハザードの視点固定は特許になったのかな。
あれも酷いですよね。
0315デフォルトの名無しさん
NGNG> というかLZ77のみは可ですか。
LZ77のみっつーか LZ77 + 単純検索だけでhashもツリーも使ってないなら、たぶん可。
LZ77 + 自分でゼロから考えた高速化をしてる場合は特許の調査をしてみんとわからん。
hashとかツリーとか言われて理解できないようなら、たぶん不可。
一般にwebや本に書かれてるLZ77のプログラムは、全てhashかツリーを使ってるから。
0316デフォルトの名無しさん
NGNG誰でも思いつきそうで、特定の誰かが思いつくものは多々ありますが、結局早い者勝ちです。
それに、もう20年近く前に「開発され尽くした」といわれた手法に、
いまさらどうこう言ってもしょうがないかと。
LZW同様、ぞくぞく特許が切れつつあるので、ちゃんと調べるなら、使うことができますよ。
あと、LZ77の大多数の特許は、圧縮時の手法(ハッシュも木も)なので、
LZ77オリジナルと同じ圧縮後データをもち、展開するだけなら、特許は全く関係ないわけです。
0317デフォルトの名無しさん
NGNGちゃんと調べるならって、>>314 には使えないって遠まわしに言ってるだけのような。
0318デフォルトの名無しさん
NGNG特許専門の弁護士やら技術者やらを用意しても回避困難
一般人ならなおさら
0319デフォルトの名無しさん
NGNG・リバースエンジニアリング、解析を禁止
しておけば大丈夫。
特許の有効期限分経過してからソースは公開すればいい。
後で特許とられても、先に実装が存在する場合は特許が成立しないので、
この場合も安全となる。
0320デフォルトの名無しさん
NGNG特許が無効になるまでの期間分の特許料払わなきゃいかんと思うが。
> 後で特許とられても、先に実装が存在する場合は特許が成立しないので、
実装が存在しただけで公知と言えるのかは疑問。
0321デフォルトの名無しさん
NGNG>> 特許の有効期限分経過してからソースは公開すればいい。
>特許が無効になるまでの期間分の特許料払わなきゃいかんと思うが。
特許の存在を知らなかったといえば回避できる。
>実装が存在しただけで公知と言えるのかは疑問。
公知でなくとも存在を証明できれば問題ない。
そのためにはネット上で配布などをあらかじめ利用する。
0322デフォルトの名無しさん
NGNG著作権じゃないんだから……
それが通るなら特許なんて法制度はあっというまに崩壊するな。
> 公知でなくとも存在を証明できれば問題ない。
改竄が比較的容易なネットでの配布が法的にどーゆー位置づけになるか、って問題と
実装だけで存在を証明できるかって問題が……
0323デフォルトの名無しさん
NGNG特許は、
知らなかったでは回避できないし、
その期間分を遡って賠償も請求されるし、
(著作権と異なり)偶然一致した場合でも侵害したことになる。
ネット上での公開は、現在は灰色。
ソースコードを登録機関に提出しておくべし。
・・・はず、有識者もとむ(特許出しているくせに、未熟ですまぬ)・・・
0324デフォルトの名無しさん
NGNG0325デフォルトの名無しさん
NGNG回避できる。例えばGIF関連では、期限が切れた今現在、過去に上って請求されることは無い。
ポイントは、経過したことと、相手に請求されていないこと。
期限が切れてしまえば、知らなかったで済む。大抵は時効だ。
ソースコードの提出は、逆に自分を危険に晒す。
自分が権利を主張しないなら、バイナリが存在すれば、それで十分。
バイナリ自体が、アセンブリ言語のソースになる。
0326デフォルトの名無しさん
NGNGお前は馬鹿か。特許制度が、どういう理念で作られたかわかっていないな。
著作権などの法制度とは全く異なる。もともと技術が隠されるのを防ぐためだ。
0327デフォルトの名無しさん
NGNG無根拠で知らなかったで済むとか言われても……
それに Unisys が現実に特許料を請求するかは別にして、
今現在でも Unisys は2004年6月(だっけ?)までの特許料を請求する権利を持ち続けてるだろ。
あとバイナリ自体がアセンブリ言語のソースって考え方なら
バイナリもソースコードと同程度に危険なはずだが。
0328デフォルトの名無しさん
NGNG奥村教授を信じるなら、LZ77の展開部分だけなら大丈夫だと思われ?
ハフマンの展開部分も大丈夫か、ハフマンの展開部分とLZ77の展開部分くっつけて大丈夫かは知らんが。
0329デフォルトの名無しさん
NGNG特許の目的は人類の知的財産の共有が目的だよ
みんなで一歩一歩進みましょう。
って感じの。
特許対象となるようなすばらしいアイデアはみんなのものです。
でも、発明人にもなにかおいしいことがないといけないので
20年間は発明を特許で保護されるわけです。
あんまり恥ずかしいこといわないでね。
0330デフォルトの名無しさん
NGNGno patent!!
0331デフォルトの名無しさん
NGNG0332デフォルトの名無しさん
NGNGあの子のへあーも
0333デフォルトの名無しさん
NGNG>>275-276,>>281
0334デフォルトの名無しさん
NGNG○ >>282
0335デフォルトの名無しさん
NGNG最近の圧縮アルゴリズムはさっぱりわからん
0336デフォルトの名無しさん
05/01/25 16:00:11『解凍Exe』はどのようにして『圧縮データ』の位置を取得してるんでしょう?
0337デフォルトの名無しさん
05/01/25 16:46:350338デフォルトの名無しさん
05/01/25 19:10:43http://pc5.2ch.net/test/read.cgi/tech/1039513920/
0339デフォルトの名無しさん
05/01/25 20:59:47とりあえず
r a r は 最 近 で き た 圧 縮 形 式 で は な い w
0340デフォルトの名無しさん
05/01/25 21:03:48ふむ...
『解凍Exe』内部にハードコードで書込んでおく。ってのも有りか...しかしなんかイヤな感じが
統合アーカイバとかの自己解凍書庫てどーゆー作りになってんだろ?
0341デフォルトの名無しさん
05/01/25 21:10:29良くわからんけどID3みたいにファイル末尾に前のブロックの末尾位置だの
最終ブロックないのデータの先頭位置だののテーブル持ってるんじゃない?
0342デフォルトの名無しさん
05/01/25 21:49:39おいおい憶測で物言うのもいい加減にしろよ。
ストリームでもなければ末尾にヘッダを置く意味がない。
自己解凍書庫の作成はあらかじめ用意した解凍ロジック付きexeの
PEヘッダに適当なデータセクションを追加修正すれば終わり。
解凍ロジックはデータセクションで定めた決めうちベースアドレスから
データを読み取るだけでOK。
PEの仕組みとローダの知識が多少あればできる。
0343sage
05/01/28 01:13:21圧縮ライブラリ知りませんか?ちょっとSymbianに乗せるアプリに実装したい
と考えています。
0344デフォルトの名無しさん
05/01/28 01:17:54Huffman自作しなされ。以上
0345デフォルトの名無しさん
05/01/28 03:00:24知りません。でも知らないって言うの恥ずかしいから煽ります。
0346デフォルトの名無しさん
05/01/28 10:44:410347デフォルトの名無しさん
05/01/28 11:11:10板違い
ソフトウェア
http://pc5.2ch.net/software/
0348デフォルトの名無しさん
05/01/29 21:18:14Lhaplusってあれだね、ファイル数が多いといつまで待っても
圧縮が始まらんねw
0349デフォルトの名無しさん
05/01/29 23:00:14ttp://park14.wakwak.com/~schezo/
0351デフォルトの名無しさん
05/02/03 18:05:41LZ77を少し改造してLZ77じゃありませんよ〜とかいったらOKなんだろうか。
0352デフォルトの名無しさん
05/02/04 03:39:172-3文字をインデクスするリストを使えばいい
木とほぼ同程度の速度で動く
・・・ぶっちゃけ、2-3文字のハッシュと同じなんだがなw
0353デフォルトの名無しさん
05/02/11 10:42:32とりあえず3バイト連続する同じデータがあれば2バイトに圧縮したらOKなんですね。
あと連続するパターン見つけるんだろうけど、俺がプログラム書いたらそんなの
時間かかってぐっちゃぐちゃでめっちゃめちゃでアウトだ
0354デフォルトの名無しさん
05/02/11 20:20:42専門書も扱っている本屋へ行って、圧縮とかアルゴリズムとか、の本を買うと良い。
パターン検索は >>351-352 のキーワードを参考に。
0355デフォルトの名無しさん
05/02/12 17:46:17それだとハッシュ使う特許に引っかかる可能性が残ると思われ。
0356デフォルトの名無しさん
05/02/12 18:02:280357デフォルトの名無しさん
05/02/12 18:12:25unsigned char c = in[i];
int count = 0;
while (c == in[++i]) count++;
out[j++] = c;
out[j++] = count;
こんな感じのルーチンで出来る。
0358デフォルトの名無しさん
05/02/13 08:34:10ハッシュとは別の論文で発表されていたから、大丈夫だとは思うがどうだろう。
Bell and Kurp, 1991. だったかな?
0359デフォルトの名無しさん
05/02/13 11:50:47ハッシュの特許に触れるか、だけが問題で
ハッシュと同じ論文で発表されたかは問題にはならないと思われ。
ちなみに、その論文の方法が特許化されてないのは確認済み?
0360デフォルトの名無しさん
05/02/15 22:29:54仮に問題があったとしても、みんな闘ってくれるはず。きっと。多分。
0361デフォルトの名無しさん
05/02/16 02:46:58zlibに採用されているハッシュ法って、まんま>>352 >>358 だよね
3文字でインデックスしたチェインリストを順に読むわけだから…
0362デフォルトの名無しさん
05/02/18 12:41:14既存のcabを展開して、パッチを当てて、また再圧縮したいんですけど・・
0363デフォルトの名無しさん
05/02/18 13:08:11UpdateResource()を使うのもありかもね。
0364デフォルトの名無しさん
05/02/18 16:38:46zlibとかのは先頭3文字を加工して使ってるからなぁ。
ハッシュでないというのは通らんと思うぞ。
加工せず使うなら、なんとかなるかもしれんが
3文字だとテーブルだけで16M*sizeof(テーブルの要素)バイトかかる。
0365デフォルトの名無しさん
05/02/18 18:26:13普通のアプリなら解凍できれば十分だし
0366みゆき
05/02/23 21:19:47エクセルのVBAで、UNZIP32.DLLを使えば良い、というのは想像出来るのですが、記述方法がわかりません。
お知恵をお貸しください。よろしくお願いいたします。
0367デフォルトの名無しさん
05/02/23 21:45:510368366
05/02/23 22:55:320369デフォルトの名無しさん
05/02/24 09:52:030370みゆき
05/02/24 11:56:21よろしくお願いいたします。
0371デフォルトの名無しさん
05/02/24 11:59:460372デフォルトの名無しさん
05/02/24 12:33:40はい
0373デフォルトの名無しさん
05/02/24 12:35:58危険です
なぜなら371はパスワード掛けてみたはいいもののそのパスワードを忘れてしまうでしょう
0374デフォルトの名無しさん
05/02/24 12:54:42zipパスワード検出プログラムが出回ってるから気休めにしかならない
本気で保護を考えてるなら止めといた方がいい
0375デフォルトの名無しさん
05/02/24 12:56:000376デフォルトの名無しさん
05/02/24 13:31:000377デフォルトの名無しさん
05/03/04 20:56:00解凍しようとしてるんですが、失敗するときがあります。
で、データが正しいかバイナリデータを出力してみてみたのですが
先頭からみると↓こんな感じになってます。
---------------------
78 9C EC 5A CB 6F 1C C9 79 AF 67 77 F5 6B 1E 1C
52 5A 91 94 28 52 94 B4 14 F7 41 AD 76 B5 F1 CA
2B 6E E0 83 45 1D 12 84 30 10 60 15 C0 87 24 F0
D9 B0 BD 57 55 F7 F4 3C 49 59 4B 2A 36 10 CA 46
80 2C 95 E4 60 3A 08 90 E5 DE BC 02 F2 4F 24 B9
E4 E0 3D AE 03 04 F0 4A 39 65 F2 7D 55 DD 3D ・・・
---------------------
http://www.futomi.com/lecture/japanese/rfc1950.html
http://www.futomi.com/lecture/japanese/rfc1951.html
をみるとzipの先頭データは8かFかってことっぽいので
このデータはzip圧縮されたデータとしてはおかしいと
思っていいのでしょうか?
0378デフォルトの名無しさん
05/03/05 01:04:40>をみるとzipの先頭データは8かFかってことっぽいので
どうしてそういう結論になる。
先頭バイトが 0x78 なんだから、CM=8, CINFO=7 でウィンドウサイズ 32k の deflate じゃないの?
あと、zlib も zip も deflate を使っているかもしれないが、zip圧縮という言い方は語弊が
あるのではないだろうか。
0379デフォルトの名無しさん
05/03/05 02:35:46二桁目がCMなんですね
ドキュメントをよく理解できてませんでした。
>zip圧縮という言い方は語弊が
このへんはよくわかってないです。紛らわしくて申し訳ないです
0380デフォルトの名無しさん
05/03/05 14:07:03バイトの並びとビットの並びに注意しよう。
リンク先の zlib の資料でも「2.1. 全般的な規約」に書いてあるよね?
>>zip圧縮という言い方は語弊が
>このへんはよくわかってないです。紛らわしくて申し訳ないです
俺もよく分からんが、
・zlib はライブラリおよびフォーマットの名前
・zip はフォーマットの名前
・deflate は圧縮アルゴリズムおよびそのフォーマットの名前
ってことでいいの?教えてエロい人!
0381デフォルトの名無しさん
05/03/05 21:26:07zlib 圧縮ファイルフォーマット
zip 圧縮形式の名称及び拡張子
こんな感じか?
0382デフォルトの名無しさん
05/03/05 22:59:220383デフォルトの名無しさん
05/03/08 08:24:49zlib バイトストリームを圧縮するライブラリ。ファイルの概念は無い。
zip 複数のファイルを圧縮したアーカイブファイルのフォーマット。
じゃないの?
0384デフォルトの名無しさん
05/03/08 11:58:14それが正解
0385デフォルトの名無しさん
05/03/09 12:30:08意味なんて人それぞれ。
zipを圧縮フォーマット(たぶんdeflate)の意味で使う奴もいる。
俺は deflate はフォーマットだと思うけど、アルゴリズムだと言う奴もいるしね。
deflate がアルゴリズムなら、zlib の deflate と 7zip の deflate は
同じアルゴリズムを使用してる事になるけど、俺は別のアルゴリズムだと思ってるから。
0386デフォルトの名無しさん
05/03/09 13:18:540387デフォルトの名無しさん
05/03/09 13:40:230388デフォルトの名無しさん
05/03/09 21:12:400389デフォルトの名無しさん
05/03/10 00:35:450390デフォルトの名無しさん
2005/05/17(火) 22:42:40unlha32で、既にある書庫にファイルを新規に圧縮して追加したいんですけど
コマンドがわかりません。どなたか教えていただけないでしょうか?
・既存の書庫ファイル(c:\work\abcd.lzh)
a/aaaa.txt
a/b/bbbb.txt
a/b/c/cccc.txt
a/b/c/d/dddd.txt を追加したい
・圧縮前のファイル
c:\temp\dddd.txt
0391デフォルトの名無しさん
2005/05/18(水) 00:17:410392デフォルトの名無しさん
2005/05/18(水) 00:45:04追加圧縮はできるんですけど、書庫内のディレクトリ指定がうまくいかなくて困っています。(;_;)
0393デフォルトの名無しさん
2005/05/18(水) 15:48:520394デフォルトの名無しさん
2005/05/18(水) 23:32:38テキストを読む
以下略
0395デフォルトの名無しさん
2005/05/22(日) 15:43:5130 30 30 30 30 30 30 30 30 30 のままで
30(ASCIIで'0')を20個つなげたやつを圧縮すると
05 30 EE FF 30 となった圧縮形式があったんだが、これなんだっけ?
ヘッダとかついてないのかね。
0396デフォルトの名無しさん
2005/05/22(日) 15:57:490397デフォルトの名無しさん
2005/05/25(水) 11:34:460398デフォルトの名無しさん
2005/05/25(水) 21:53:480399デフォルトの名無しさん
2005/05/26(木) 14:24:320400デフォルトの名無しさん
2005/05/26(木) 19:18:100401デフォルトの名無しさん
2005/05/27(金) 02:50:420402デフォルトの名無しさん
2005/05/27(金) 07:48:48実装でもアルゴリズム概念を聞いている訳でもなし。
0403デフォルトの名無しさん
2005/05/28(土) 02:00:36ま、巷じゃ「圧縮がわかる本」とかいって圧縮ツールの使い方だけ教えてるのが何百冊も出てるしな…
0404デフォルトの名無しさん
2005/05/28(土) 02:22:080405デフォルトの名無しさん
2005/05/29(日) 11:44:420406デフォルトの名無しさん
2005/06/25(土) 07:17:01これってVC++(MS-LINK)用COFFのようですが、BCC++(ILINK32)でうまく使えないみたいなんですが・・・?(UNZIP32.DLL)
BC++付属のCOFF2OMFで変換するも、デフォルトでは利用できず、-lib:stスイッチで変換しました。
しかし名前インポートができず、オーディナルになってしまいます。
BCC++で名前インポートするにはどうしたらよいでしょうか?
0407406
2005/06/25(土) 08:55:05MASM + MS-LINKでそのままリンクすると序数インポートになってしまうんだった。
<<X.ASM>>
.386
.model flat,stdcall
.code
start:
call UnZipGetVersion
ret
end start
<<ビルド法>>
ml /c /coff x.asm
link /subsytem:console x unzip32.lib
私はVC++を持ってないのではっきりとはわかりませんが、リンカが同じなのでVC++でも名前インポートにはならないですよね・・・?
名前インポートにするにはどうしたら・・・?
0408デフォルトの名無しさん
2005/06/25(土) 09:32:50各処理系のスレで聞いた方がいいと思う。
0409デフォルトの名無しさん
2005/06/25(土) 09:34:510410デフォルトの名無しさん
2005/06/25(土) 09:58:180411407
2005/06/25(土) 22:28:30IMPLIBなら確かに付属のインポートライブラリはいらないですが・・・MS-LINKはOBJ型ライブラリが使えないようなんですが・・・?
>>410
オーディナルのインポートって信用できないんですよね・・・
DLLのバージョンが上がると変わらない保証ってないじゃないですか・・・?
0412デフォルトの名無しさん
2005/06/25(土) 22:50:29BCCで使うのになんでMS-LINKが出てくるんだ? わけ分からん
MS-LINKなら付属のLIB使えば済む話だろ
0413411
2005/06/25(土) 23:01:26ですから間違えました。BCCじゃなくてMASMです。
0414デフォルトの名無しさん
2005/06/25(土) 23:07:260415デフォルトの名無しさん
2005/06/26(日) 01:30:550416デフォルトの名無しさん
2005/06/26(日) 03:21:54特許の期限が切れたもの
0417デフォルトの名無しさん
2005/06/26(日) 07:12:59bzip2,gzip
0418デフォルトの名無しさん
2005/06/26(日) 07:29:29知られてないだけで、所謂サブマリン特許の類のパテントが存在するかも知れないし。
bzip2のBWTも発案者が特許を取らないといっているだけだし。
圧縮ソフト作るのって床から刃の出ている廊下を歩くような感じだよ。
時々踏むと刃のでる罠が仕掛けてあったりして。
最初にアルゴリズムに特許を与えたバカは誰なんだろう。
0419デフォルトの名無しさん
2005/06/26(日) 10:33:39アルゴリズム特許は暗号が初めてじゃないっけ
それならこれもそれならこれもとずるずる範囲が広がっていった。
暗号の場合は納得できるんだけどねー
0420デフォルトの名無しさん
2005/06/26(日) 15:19:360421デフォルトの名無しさん
2005/06/26(日) 17:41:04線形計画法のカーマーカー法じゃないの?
>カーマーカー特許とソフトウェア―数学は特許になるか 中公新書
>ttp://www.amazon.co.jp/exec/obidos/ASIN/412101278X/249-7663900-1232317
元々の圧縮アルゴリズムはともかく、○○+ハッシュとかいうのになってくるとどんどん納得できなく
なっていくんだが。
0422419
2005/06/26(日) 20:43:13すまんこった、カーマーカー法が最初の特許アルゴリズムだった。
ほら吹いてしまいました。ごめんさない。
0423デフォルトの名無しさん
2005/07/01(金) 09:17:37UNZIP32はいるみたいなのですが。HP読んでもわからない・・・
0424デフォルトの名無しさん
2005/07/02(土) 03:14:070426デフォルトの名無しさん
2005/10/12(水) 02:59:270427デフォルトの名無しさん
2005/10/25(火) 10:46:17DEFLATE圧縮では元データはバイトごとに圧縮されるのですか?
それとも6ビットや5ビットなどビット単位ですか?
RFCと一緒にzlibやgzipのソースを読んでいるのですが
自分の読解力ではわかりません。
0428デフォルトの名無しさん
2005/10/25(火) 11:33:320430デフォルトの名無しさん
2005/10/25(火) 11:44:070432デフォルトの名無しさん
2005/10/30(日) 11:38:36調べようと思ったんですが検索ワードが思いつかない…
0433デフォルトの名無しさん
2005/10/30(日) 14:54:09君が何を聞きたいかが理解できない。
とりあえず付加するのは誰?
特定のソフトの話か、特定のファイル形式の話?
0434デフォルトの名無しさん
2005/10/30(日) 18:22:37漏れの予想では、ファイルの末尾に00を付加させるのに、
どんな関数orAPIをコールすれば良いか判らない
そういうレベルの質問だと思う
0435デフォルトの名無しさん
2005/11/01(火) 00:17:171 バイトのファイルを作っておいて copy /b とか cat とか、
そんなスキルもないならバイナリエディタ。
ってところだったりして。
0436デフォルトの名無しさん
2005/11/01(火) 02:01:510437デフォルトの名無しさん
2005/11/04(金) 11:05:220438デフォルトの名無しさん
2005/11/04(金) 11:16:460439デフォルトの名無しさん
2005/11/04(金) 20:13:26誰がうま(ry
>>432, >>435
出てきて釈明しる!
0440435
2005/11/04(金) 22:15:29「伺か」が使うアーカイブ(実態はzip)の拡張子。
公開終了したアーカイブをWebArchiveから拾ってくるって話。
まあ、オタネタだ。
0441435
2005/11/04(金) 22:26:30WevArchiveにはファイル末尾の0を切り捨ててしまうというバグ(?)がある。
そのためせっかく昔のアーカイブを見つけてもzipが解凍できないことがある。
末尾に0を付加してやると正常に解凍できるようになる。
というのがこちらで想定した問題のバックグラウンド。
0442432
2005/11/04(金) 22:31:07narは良く分からなかったけど、435が書いてくれたからまぁ良いかと思ってた
オレのせいで微妙な話が続いて悪かったです
0443デフォルトの名無しさん
2005/11/12(土) 12:52:07あと、gzip(と可能ならzipも)の中のファイル名を解凍せずに知りたいんですが、できませんか?
0444デフォルトの名無しさん
2005/11/12(土) 18:30:27別に読みにくくは無いし、そんなに長くもないし。
gzio.cも。
0445デフォルトの名無しさん
2005/11/17(木) 22:59:07ヘッダにテキストで書いてあるけど。
0446デフォルトの名無しさん
2005/11/17(木) 23:36:52日本語って言ってるだろうが、馬鹿
0447デフォルトの名無しさん
2005/11/18(金) 00:43:370448デフォルトの名無しさん
2005/11/18(金) 15:11:28日本語読めないのに日本語要求してたんですね。
# 単に駄々をこねてみたかっただけかな? :-P
0449443
2005/11/18(金) 23:21:09日本語訳はこれですね。
ttp://www.sra.co.jp/people/m-kasahr/zlib/zlib-1.1.4-ja.h
0450デフォルトの名無しさん
2005/12/25(日) 22:34:49自前でzipファイルを作るプログラムを作ろうと思います。
とりあえず、ここの仕様書を見たのですが、
http://www.pkware.com/business_and_developers/developer/popups/appnote.txt
extra fieldの意味がよくわからないです。
私の場合は、この部分は出力しなくて良いのでしょうか?
0451デフォルトの名無しさん
2005/12/26(月) 16:51:160452デフォルトの名無しさん
2005/12/26(月) 23:35:030453デフォルトの名無しさん
2006/02/09(木) 06:24:45圧縮アルゴリズム考えたんですが
http://pc8.2ch.net/test/read.cgi/tech/1041803200/
テンプレは >>1-3 あたりには無い。
0454デフォルトの名無しさん
2006/02/10(金) 23:16:400455デフォルトの名無しさん
2006/02/26(日) 18:38:09http://pc8.2ch.net/test/read.cgi/tech/1140946646/
0456デフォルトの名無しさん
2006/02/27(月) 10:56:10まずデータの中にフラグの立ったビットがいくつか数えます。
そしてデータは0と1を並べ変えたものと考えます。
あとはそれを使って先頭ビットから1なら
(そこから先のビット数)C(そこから先の立ちビット数)
を計算して足していきます。
つまり圧縮するデータを0と1の並べ替えとしたときに、
それらを辞書順に並べて上から何番目かを数えるということをします。
例)8ビット中3ビット立ってるとして
10001100
最初1なので
7C2
を計算。0は読み飛ばし次の1でも
3C1
を計算。これ以上は変わらないので終わり。
で、上の二つを足す
7*6/2*1+3/1=24
あとはこの数と圧縮前のファイルサイズと立ちビットの数だけ出力すれば復元可能。
こいつはすげぇやとオモて作ったら799バイトのデータを50分かけて圧縮して何番目のデータかの数値だけで2972バイト悔いました。
C(コンビネーション)て恐ろしいな
0457デフォルトの名無しさん
2006/02/28(火) 00:49:540458デフォルトの名無しさん
2006/02/28(火) 09:12:37Lynch-Davisson 符号とか数え上げ符号を調べてみて
0459デフォルトの名無しさん
2006/02/28(火) 10:27:280460デフォルトの名無しさん
2006/02/28(火) 16:19:05ブロックソートが何故圧縮にいいのか証明されていない、
と聞いた気がするんだけど、今はもう証明されているの?
0461蕪木ら某 ◆Googl8RmwA
2006/03/01(水) 03:29:220462デフォルトの名無しさん
2006/03/01(水) 03:52:31有村 とか Effros の論文読んでみて
0463デフォルトの名無しさん
2006/03/01(水) 04:02:46Schalkwijk の数え上げ符号
長さ n のバイナリ文字列中に 1 の個数が w 個あるものを考える
このとき、インデクス i
i = Σj=1,n x[j] n-j C w[j]
を用いて1対1に対応付けすることができる。ただし、w[j] = Σi=j, n x[i]
符号化は、まず、1 の個数 w を ceil(log n) ビットの2進数で出力する
次に、インデクス i を ceil(log k C w) ビットの2進数で出力する
なお、ceil() は切り上げ
この符号化は、1記号あたりエントロピーまで漸近的に圧縮可能
0464デフォルトの名無しさん
2006/03/01(水) 14:26:02ところでJAVAでLZWとLZ77とHUFFMANとDEFLATEを説明サイト見ながら自分なりの解釈で作ったんだけど
76Kbのビットマップをデフレで圧縮したら44Kbになったのね。
で、7zのZIPで圧縮したら37Kbになったのよ。
これって何がいけないの?Lhacaも7zより圧縮率悪いけど
どういう工夫すれば縮むようになるん?
教えてエロい人!
0465デフォルトの名無しさん
2006/03/02(木) 18:09:480466デフォルトの名無しさん
2006/03/02(木) 23:20:46よくあるのは、出現率の低いものを2個取り出して、その和をつくり、さらに残ったなかから一番出現率が小さいものをとりだし、
これと、先ほどの和の結果との和をとり・・・
という説明です。
でもなんか要するに出現数のおおい順にソートして(出現ゼロ回のものは無視する)
A,D,B,C,・・・みたいに配列に入れます。
そして順に、1,10,110,1110,11110・・・
と符号をふればいいだけのように思えてしまいます。
なぜ小さいものを取り出して和を作り、さらに小さいのと和をつくり・・みたいなことをする必要があるのでしょうか?
0467デフォルトの名無しさん
2006/03/02(木) 23:35:09なんでかって?忘れたなぁ…
0468デフォルトの名無しさん
2006/03/03(金) 00:01:40それは unary 符号(単進符号、一進符号)というもの
符号が最適になるには条件というものがあって、
unary の場合、記号の出現確率が 1/2, 1/4, 1/8, ... となる場合にのみ最適な符号を構成できる
一方、Huffmanはどんな出現確率の記号群に対してでも最適な符号を構成できる
0469466
2006/03/03(金) 00:41:32ありがとうございます!!!!!!!!!
0470デフォルトの名無しさん
2006/03/04(土) 00:41:35教えてくれ俺もみたい
0471デフォルトの名無しさん
2006/03/04(土) 10:02:12というところ。その名の通り原理や概念を解説しているだけでJAVAどころか
プログラミングにすらふれていない。
でも説明は分かりやすいからJAVAでも作れた。
0472デフォルトの名無しさん
2006/03/04(土) 21:26:39ないよ
どうすればいいの?
0473デフォルトの名無しさん
2006/03/04(土) 21:37:290474デフォルトの名無しさん
2006/03/04(土) 21:39:060475デフォルトの名無しさん
2006/03/04(土) 21:54:370476デフォルトの名無しさん
2006/03/04(土) 23:53:49管理人は一人で何役もこなすアニメ好きの54歳
世露死苦!!
0477デフォルトの名無しさん
2006/03/05(日) 14:04:160478デフォルトの名無しさん
2006/03/05(日) 19:46:290479デフォルトの名無しさん
2006/03/05(日) 20:51:59自作だったら性能を上げる工夫とか教えてほしいです。
0480デフォルトの名無しさん
2006/03/06(月) 00:58:20パフォーマンスそこそこでだいたい2kから10kいないの
zlibを作成しようとしてます。なので性能よりもマシン語
の吐かせた内容をコンパクトにすることに命をかけています。
私も工夫とかよく解らない部分が多いため、IEEEの論文などをいくつか入手し
勉強をしているところです。アルゴリズム的に速度を上げる方法と
コーディングレベルで最適化する方法2つの視点で最適化について
考えていますがまだ道のりは厳しいです
0481デフォルトの名無しさん
2006/03/06(月) 01:23:440482デフォルトの名無しさん
2006/03/06(月) 13:05:55Cはよく分からんがブロックソートの符号化とMTFの符号化・復号化が完成
ブロックソートの復号がうまく行かない…
0483デフォルトの名無しさん
2006/03/07(火) 01:43:41記号が一回しか登場せず、2分木が1つも作成できないような場合、
その記号にはどんな符号を割り当てるのですか?
0484デフォルトの名無しさん
2006/03/07(火) 06:59:12俺はその値が1になる場合は2にしてもう一文字あると仮定して
やってる。その文字は何でもいいが大抵は0x0だな
0485デフォルトの名無しさん
2006/03/07(火) 08:28:48「記号が1種類しかない」フラグを作って、記号を記録しとく。
「記号がいくつ現れたか」も記録しとけば、記号は全部空ビット列に変換で良い。
0486デフォルトの名無しさん
2006/03/07(火) 21:31:22>>484
なるほど。それならアルゴリズムに大幅な変更はいらないですね。
>>485
そうですね。Huffmanにこだわらずにってことですね。
今からどっちにするか迷います。ありがとうございました。
0487デフォルトの名無しさん
2006/03/08(水) 00:50:18抵触技術内容含まれてないですよね?
0488デフォルトの名無しさん
2006/03/08(水) 07:25:580489デフォルトの名無しさん
2006/03/08(水) 22:54:08もしそうならパケロスしても大丈夫な理由を教えてください。
0490デフォルトの名無しさん
2006/03/14(火) 19:13:07ができた。でもサイトにあるほどの圧縮率が出ないwwwww
なんで…orz
0491デフォルトの名無しさん
2006/03/14(火) 19:38:26どこのサイトかしらないけど、結果だけ載せている場合は、かなり細かいチューニングや、
アルゴリズム改良が加えられていることが多い。
ソース・実行プログラムもあるなら、圧縮結果をバイナリ比較するとか、
サイトのプログラムによる出力を自作プログラムで展開させてみるとか(あるいはその逆)、
圧縮結果のバイナリそのものの解析をしてみたらどうだろう。
0492デフォルトの名無しさん
2006/03/14(火) 21:50:38Cのソースがあったから移植してみたブロックソートは間違いないからなぁ…
まあいろいろ結果を調べてみる
0493デフォルトの名無しさん
2006/03/15(水) 12:29:54Cのソースプログラムが公開されているので、
1ステップずつ動作を追っていけばいいのではないか
途中の変数の状態を確認したり、演算結果に差異がないかを調べたり
0494デフォルトの名無しさん
2006/03/15(水) 19:31:53落とさなきゃだめかな?
0495デフォルトの名無しさん
2006/03/15(水) 22:51:59「資金がない」で逃げる行為はもはや言い訳にならなくなった。
0496デフォルトの名無しさん
2006/03/16(木) 07:09:380497デフォルトの名無しさん
2006/03/16(木) 15:00:590498デフォルトの名無しさん
2006/03/16(木) 16:44:24実はヘッダなどの付加のしかたが微妙に違うのだがそれだけで
こんなに差が出るもんかな?ちなみに
BlockSort->MTF->ZLE+RLE7->RCA
って感じで4段階で圧縮してます。ヘッダ情報はどれもこっちの方が少ないのに…
0499デフォルトの名無しさん
2006/03/16(木) 19:09:09アルゴリズムや定数も同じで、各段階でのヘッダも小さいのに
出来上がりファイルが大きいのなら何かバグってるんでしょうね。
0500デフォルトの名無しさん
2006/03/16(木) 21:24:350501デフォルトの名無しさん
2006/03/18(土) 08:49:040502デフォルトの名無しさん
2006/03/18(土) 11:09:590503http://www.vector.co.jp/soft/win95/util/se072729.html
2006/03/18(土) 18:35:48もしくは64bitにネイティブ対応した置換ソフトないですか?
0504デフォルトの名無しさん
2006/03/19(日) 19:48:350505デフォルトの名無しさん
2006/03/19(日) 20:22:480506デフォルトの名無しさん
2006/03/19(日) 20:51:342chの無駄も減って一石二鳥だね
0507デフォルトの名無しさん
2006/03/19(日) 23:20:14めっちゃ苦しかった
0508デフォルトの名無しさん
2006/03/20(月) 08:55:070509デフォルトの名無しさん
2006/03/20(月) 22:28:21JAVAにブロックソートとMTFとZLE7と適応型RANGEを移植完了!!ながかった〜
圧縮率は7z>BZIP2≒俺の>ZIPという感じ
これからは圧縮されたデータをさらに圧縮できるようにする変換でも考えるノシ
0510デフォルトの名無しさん
2006/03/28(火) 22:15:14zip32.dllに圧縮したいフォルダパスを-rオプションで渡した場合
zip内に格納されたファイルがドライブTOPからのフルパスで格納されてしまいます。
指定したフォルダ以下のみを格納するにはどうすれば、よいのでしょうか?
0511デフォルトの名無しさん
2006/03/29(水) 01:03:460512510
2006/03/29(水) 02:44:16無事にできました(^-^;
ありがとう
0513デフォルトの名無しさん
2006/04/22(土) 06:43:410514デフォルトの名無しさん
2006/04/23(日) 19:25:43利用はWindowsです。
0515デフォルトの名無しさん
2006/04/23(日) 21:59:31ここのサンプルcomptest.cで解凍しようとしても、エラー起こして解凍できないんだが、できます?
0516515
2006/04/24(月) 11:44:22しかし、他で圧縮したのはこれで解凍できないし、これで圧縮したのは他で解凍できない。
ヘッダー? ヘッダーの処理はzlibはしてくれないんですか? 初期化時にヘッダー付きを渡すとポインターとカウンターが変わるかもしれないと説明には書いてあるが、実際変わらない。
0517デフォルトの名無しさん
2006/04/25(火) 00:08:09その辺は自作汁。
この辺の本を読んでみるとよし…と思う
http://www.amazon.co.jp/exec/obidos/ASIN/4797324287/
0518デフォルトの名無しさん
2006/04/27(木) 18:33:29byte *src // 圧縮されたデータ
int len // src の長さ
byte *dst // 解凍されたデータの格納先
dst = malloc(5 * len * sizeof(src));
decompress(dst, src, len); // src を展開して dst に格納
// 適当な処理
free(dst);
みたいなことをやろうかなと考えているんですが、dstで確保したメモリが足りなかったときのことを
考えるとこれじゃあマズいでしょうし、あらかじめ必要なメモリの計算は解凍処理をしないと
分からないようだしでちょっと困っています。
皆さんならどうしますか?
0519デフォルトの名無しさん
2006/04/27(木) 21:25:40圧縮前のデータのサイズも持っておく。
0520デフォルトの名無しさん
2006/04/27(木) 22:28:480521デフォルトの名無しさん
2006/04/29(土) 06:05:34CABファイル内のデータが欠けている場合にファイルを取り出せる可能性についてですが・・・
<CFFOLDER数=1>
CFFOLDER[0]
CFFILE[0]
CFFILE[1]
CFDATA[0]
CFDATA[1]
このような構造になっていて、CFFILE[1]が指すデータオフセットがCFDATA[1]内を指しているものとします。
この時にCFDATA[0]がまるまる欠けている場合、CFDATA[0]に適当なダミーデータを押し込むことによってCFILE[1]のファイルを取り出すことはできるでしょうか?
MSのツールEXTRACT.EXE等で調べたところ、どうもCFDATA[0]が完全でないとCFFILE[1]のファイルは取り出せないみたいなのですが・・・
圧縮法はLZXです。
後ろの方(例えばCFDATA[2])が欠けている場合はそれがファイル内容にかかっていても途中までですがデコードできるようです。
0522デフォルトの名無しさん
2006/05/04(木) 15:17:36普通の ISO イメージファイルだったら ISO-9660 に書かれている内容がそのまま直列で入っているだけだと思うが。
0523デフォルトの名無しさん
2006/05/04(木) 22:41:50書こうと思ったんだけど、(ファイルサイズ) x (情報エントロピー) で計算すると
全然いけてないですか?
0524デフォルトの名無しさん
2006/05/05(金) 00:07:25圧縮につかうモデルでのエントロピーでないとまともな数字が出ない。
ある程度でも結局圧縮するのと同じになってしまうのであまりいけてない。
まあ、とりあえずモデルを特定しないでHuffman,算術符号,RangeEncoderなどの
エントロピーを出しておけば最低保証値だけは出せるかな。
0525デフォルトの名無しさん
2006/05/05(金) 00:21:23=元のファイルサイズ
0526デフォルトの名無しさん
2006/05/05(金) 14:18:48もちろんその場合は圧縮しなければ元のサイズなんで圧縮しなければいいんだけど
「元のサイズ分あれば十分だろー」ってメモリ確保してやってみらたオーバーフローとか
かっこわるいことになることがあるかもしれない…?
0527デフォルトの名無しさん
2006/05/05(金) 15:17:36そういうときは、1回の処理で増えうる容量分だけ余分に確保しておけばよい
その見積もりができないとか、1回で無限増殖しうるとか、そういうのはしらね
アルゴリズムを見直すか、出力方法を考え直すべきだがな
0528デフォルトの名無しさん
2006/05/05(金) 21:42:11受信して展開して、通信をやりたいと思ってます。
流すデータは未圧縮の画像データを分断して送受信します。
LZOのような、圧縮・展開の速いプログラムってないでしょうか?
0529デフォルトの名無しさん
2006/05/06(土) 00:10:44LZOではだめなのかい?
Huffmanあたりをまず試してみて、圧縮率・速度の検討をしてみてはどうか
0530デフォルトの名無しさん
2006/05/06(土) 09:04:06GPLなので困ってます・・・
>Huffman
なるほど、試してみます。
0531デフォルトの名無しさん
2006/05/10(水) 20:46:46コンパイルは何とか通ったのですが実行できません。
ファイルの初期配置も何だか変な気がするのですが…。
これ、何か不具合でしょうか?
それとも私が何かの設定間違ったのでしょうか?
誰かわかる人いたら教えてください。
てか、やっぱりこういう用途でJavaって邪道なんですかね。
扱ってるサイトも見ません。
0532デフォルトの名無しさん
2006/05/13(土) 00:35:47こういう用途ってどんな用途だよ
0533デフォルトの名無しさん
2006/05/13(土) 09:31:01その辺からサンプルソースを落として
とりあえずコンパイルすれば何もせずに
目的のものが手に入ると思ってる用途
だろ?
0534531
2006/05/16(火) 19:41:24気まぐれで覗いてみたら回答というか煽り文句がついてて
嬉しいんだか悲しいんだか。
亀レスになるけど、せっかく返事もらったし。
>>532
ツールを作る用途のつもりで書きました。
ゲーム制作だとかは(使えねぇと言いつつ)結構あるんだけど…
ツールの例がちょっと見つからなかったので。
調査不足ですか。ごめんなさい…。
>>533
適切な分析をどうもありがとう。
とりあえず、パッケージの設定と配置されてる階層が明らかに違うものがあったのですよ。
ちゃんと動かしたら治ったけどね。
サイトのミスかこっちのミスか気になったんだけど
自己解決と言うか自己完結。どうでもよくなっちまった。
0535デフォルトの名無しさん
2006/05/16(火) 23:40:15それを作者にフィードバックしてこそ、ネットの意義じゃないか・・・
0536デフォルトの名無しさん
2006/05/17(水) 03:08:09おすすめなどありますか?
0537デフォルトの名無しさん
2006/05/17(水) 05:35:14zlib
0538531
2006/05/17(水) 08:10:47それはそうなんだけどね。私チキンだから…。
それに、いまだに誰もフィードバックしていないという点が
用途に関する疑問につながってるわけで…
まあ、そんな御託というか言い訳はどうでもいいか。
それより改めて聞きたいことができてしまいました。
7z形式のデータ書式がどんな構造してるかわかる人いませんか?
バイナリで開いてみたりしたところ
7z〜(たぶんヘッダ)圧縮したファイルのデータ… ファイル名らしきもの(たぶんフッタ)
って構造になってたのですが、これの細かい仕様がわからないのですよ。
使ってる間は保存形式なんて気にもしてなかったんですけどね…
使う側から弄る側に来て、自分の無能っぷりを痛感しております。ハイ。
0539デフォルトの名無しさん
2006/05/17(水) 16:35:50開発用のヘッダとかに書いてあるんじゃねーの、そんなもん。
0540531
2006/05/17(水) 18:31:07統合アーカイバプロジェクトとは何ぞや…っと。
googleで検索→(゚∀゚;)アハハハ…orz
情報提供ありがとうございます。
理解できるか怪しげですが…やるだけやってみます。
0541531
2006/05/18(木) 10:28:18>main() を呼び出しているだけに過ぎません。
>理由は 7-Zip は現在進行形で日々進歩しているのでフォーマットを解析して
>独自に作成すると新しい形式にすぐに対応する事が出来ないためです。
ウボァー(゚Д゚)
0542デフォルトの名無しさん
2006/05/18(木) 15:01:52本家は最初に見たんだよね?
>>541
統合アーカイバは、
基本的にこの手のものはライブラリで済ますか、
引数の統一を行うインタフェースであることが多い。
0543531
2006/05/18(木) 15:50:567-zipの日本語サイトは見ました。
…もしかして、ここで言う本家って、英語ページのことだったりします?
やっぱり見なきゃダメかな…。
byteで取り出してあとはループで解読していけばいいかなーとか考えてたら
解読部分のソースjavaで置いてないし。
7z書庫のフォーマットもわからないし。
フォーマットの解析からするしかないのかな…。
7zFormat.txtというそのまんまな文書がLZMA SDKに入っているように思うのですが、気のせいでしょうか。
0545デフォルトの名無しさん
2006/05/18(木) 21:09:230546531
2006/05/18(木) 22:59:37…。
('A`)ウボァー
しかもなんか、このテクスト見覚えがある気がするぞ('A`)ウボァー。
ご指摘ありがとうございます。明日にでも中身見てみます。
やっぱり英語は大事ですね…。
でもノバとか行く気無いしなー。
0547デフォルトの名無しさん
2006/05/18(木) 23:50:12日本語の読み書き・会話がフツーにできても日本語の難しい技術資料を読むのは大変。
それと同じで、どんなに英語ができるようになっても技術系の情報はどうしても読み辛さがつきまとう。
だからもう英語の技術情報の読み辛さは開き直って受け入れるしかないよ。
ちなみに逆にある程度、英語になれちゃうと日本語と違ってあいまいさが少なく直接的な表現が
多いから下手な日本語の技術資料よりもよっぽど読み易いこともある。
0548デフォルトの名無しさん
2006/05/19(金) 01:57:46それって逆だろ
英会話はからっきしできなくて英語の小説もさっぱりワカンネ
英語は専門書ぐらいしか読めないやって理系は多いと思うぞ
0549デフォルトの名無しさん
2006/05/19(金) 08:13:35>英会話はからっきしできなくて英語の小説もさっぱりワカンネ
>英語は専門書ぐらいしか読めないやって理系は多いと思うぞ
俺の経験からすると全く逆だ。俺も英語は技術資料を読むためだけにしか使ってなくて
自分の英語力の低さを嘆いたんだけど、こんなことじゃいかんと英語圏のメーリングリスト
に参加してみたらそこでやりとりされてる会話が思いの外スラスラ読めてビックリした。
それで俺は、あー、やっぱり英会話って中学生の英語レベルで十分意思疎通は可能
なんだなぁと思ったもんだけど。
0550デフォルトの名無しさん
2006/05/19(金) 08:39:30才能の無い奴はいくら勉強しても無駄。
一方で、できる奴がやたら必死に「努力すれば誰でもできる」
ことにしたがるのも外国語という分野。
0551デフォルトの名無しさん
2006/05/19(金) 08:57:03>ことにしたがるのも外国語という分野。
それはその他の多くの分野でもそうだろ。
俺も、中学生の頃ぐらいまではプログラミングを「努力すれば誰でもできる」ものだと吹いていた。
いまじゃ、ほとんど逆のこと言ってるけどねw
0552デフォルトの名無しさん
2006/05/19(金) 14:16:14仕事じゃないなら、プログラミング自体が趣味だとか、
興味の対象とすることに応用できるとか(音楽家が演奏PG作るとか)何か理由がないと
向いてる人以外はそもそも学習意欲がわかないだろうね。
0553デフォルトの名無しさん
2006/05/20(土) 01:10:510554デフォルトの名無しさん
2006/05/20(土) 04:33:37>>552にも「プログラミング自体が趣味だとか」と書かれておりますし
忘れたわけではないと思いますよ。
0555デフォルトの名無しさん
2006/05/21(日) 17:34:54しろって言われてしまいました。データ自体のパターンは限定せず、場合に
よっては1バイトから即時送信できないといけないようです。もちろん、最初の
方のデータが増えるのは構わないのですが、「データ送信を継続しているうち
にだんだん圧縮が効いてくる」ようにしたいのです。
一応売り物に組み込むものなので、自分で作るのは信頼性&手間&特許絡み
でめんどいので、できればzlibあたりを使いたいのですが、こういう場合にも
使えるものなのでしょうか ? おそらく、任意のタイミングで出力バッファを
flushしてデータを送信してしまっても、蓄積した圧縮に必要な情報がそのまま
残って以降のデータに適用できれば使えるとは思うのですが。
0556デフォルトの名無しさん
2006/05/21(日) 19:23:27しろ
まで読んだ
0557デフォルトの名無しさん
2006/05/22(月) 22:32:53仕事
しろ
よ
まで読んだ
0558デフォルトの名無しさん
2006/05/23(火) 04:51:04> が増えるのは
>
>
> めんどいので、
> おそらく
> そのまま
> 残って ると 思う
0559解凍されたい
2006/07/03(月) 18:08:33いるのですが、サンプルを参考にして下記のようにしてみても、解凍
後のファイルが作成されません。
m_hUnzipDll = LoadLibrary( "unzip32.dll" );
if( m_hUnzipDll != NULL ){
m_pWiz_SingleEntryUnzip = (_DLL_UNZIP)GetProcAddress( m_hUnzipDll, "Wiz_SingleEntryUnzip" );}
else{ MessageBox( 0, _TEXT("ERROR on LoadLibrary"), 0 ); return;
}
m_lpUnzipUserFunctions.password = Password;
m_lpUnzipUserFunctions.print = DisplayBuf;
m_lpUnzipUserFunctions.sound = NULL;
m_lpUnzipUserFunctions.replace = GetReplaceDlgRetVal;
m_lpUnzipUserFunctions.SendApplicationMessage = ReceiveDllMessage;
m_lpUnzipUserFunctions.ServCallBk = ServerCallback;
LPSTR acArchiveName = "C:\\testdir.zip";
m_lpDcl.ncflag = 1;
m_lpDcl.fQuiet = 2;
m_lpDcl.ntflag = 0;
m_lpDcl.nvflag = 0;
m_lpDcl.nzflag = 0;
m_lpDcl.ndflag = 1;
m_lpDcl.naflag = 0;
m_lpDcl.nfflag = 0;
m_lpDcl.noflag = 1;
m_lpDcl.ExtractOnlyNewer = 0;
m_lpDcl.PromptToOverwrite = 0;
m_lpDcl.lpszZipFN = acArchiveName;
m_lpDcl.lpszExtractDir = NULL;
(*m_pWiz_SingleEntryUnzip)( 0, NULL, 0, NULL, &m_lpDcl, &m_lpUnzipUserFunctions );
FreeLibrary( m_hUnzipDll );
0560解凍されたい
2006/07/03(月) 18:09:51zipファイルを指定して、unzip32.dllのAPIであるWiz_SingleEntryUnzip
を上記のように呼び出して解凍を試みています。
マニュアルによると、圧縮ファイル内のすべてのファイルを解凍する場合、
第1引数と第2引数は上のように出来るはずなのですが、どこが間違ってい
るのかわからなくなってしまいました。
どなたかよいサンプルプログラム(動くもの)等をご存知の方がいらっし
ゃいましたら教えてはいただけないでしょうか?
0561デフォルトの名無しさん
2006/07/04(火) 00:58:13もしそうなら、前後の依存関係が問題になって、なかなかいい圧縮率を出せないような・・・
0562デフォルトの名無しさん
2006/07/04(火) 03:19:56lz77は出力したビットへのポインタを符号化する。
なので、後方の依存関係はなくて、常に前方依存。
だからストリームに出来る。
といっても32KBのバッファは必要。
圧縮率の問題は依存とかじゃなくてアルゴリズムの問題。
PPMも前方依存でストリーム可能だけど多くの場合で圧縮率はlzよりもずっと高い。
こっちはメモリ沢山使うし遅いから少し使いにくい。
ちなみにこの前方依存は有限文脈とかマルコフモデルとか呼ばれる。
BWT(ブロックソート)は少し違う。
0563デフォルトの名無しさん
2006/07/04(火) 03:46:50ウィルス検索について質問です。
ウィスル検索ソフトで圧縮ファイルを検査した場合、ウィルスを検索するのはファイルを一度解凍してから検索しているのでしょうか?
それとも、圧縮されたまま検索されているのでしょうか?
また、どのようにして、検索ソフトはウィルスを発見しているのでしょうか?
回答、お願いいたします。
0564デフォルトの名無しさん
2006/07/04(火) 04:19:43ソフトによるとしか言いようがない。
圧縮されたものは解凍しなきゃならんわけだから
ファイルが圧縮されているのかどうか調べなきゃならん。
数ある圧縮形式全てを調べるのは不可能だから
普通に考えれば解凍はしないだろう。
ただしOSが扱える形式(WinXPならzip, cab等)は解凍して調べてるかもしれん。
ウィルスは大概怪しげなコードが入っているから、
既知のウィルスに共通している部分をハッシュ化して比較するんじゃないかと予想。
自己参照して実行可能アドレスにロードするとか。
あとは他で聞いとくれ。
0565デフォルトの名無しさん
2006/07/04(火) 16:25:05大抵は解凍するんじゃない?
以前にどっかのウィルス保護ソフトが日本中の大量のPCを麻痺させた原因が、
圧縮ファイルの展開のバグでCPU100%使い続けてしまうって奴だった。
0566デフォルトの名無しさん
2006/07/05(水) 20:37:14Zlib.dll を使った場合のファイル解凍を行うとき、
使うソフトはなにを使えばよいのでしょうか?
Explzh 等のDLLを組み込んで使うタイプのソフトを探しています。
0567デフォルトの名無しさん
2006/07/06(木) 08:33:300568解凍されたい
2006/07/07(金) 17:16:51にまで対応した商用ライブラリってありますか?
0569デフォルトの名無しさん
2006/07/07(金) 21:39:160570デフォルトの名無しさん
2006/07/19(水) 16:31:39zlibだと、ちょっとソースが大きすぎ
このliblzf位の規模で、もう少し圧縮効率が良いのは無いかな?
http://www.goof.com/pcg/marc/liblzf.html
0571デフォルトの名無しさん
2006/09/04(月) 22:07:300572デフォルトの名無しさん
2006/09/07(木) 18:48:02奥村先生のアルゴリズム本なんかどうよ
http://oku.edu.mie-u.ac.jp/~okumura/algo/
あと、英語が読めるならここも参考になるかも
http://oku.edu.mie-u.ac.jp/~okumura/compression.html
0573デフォルトの名無しさん
2006/09/07(木) 20:20:01オンザフライでデコードして手に入ったプレインデータから順次描画とかしたいのですが
近道を教示して下さい。
0574デフォルトの名無しさん
2006/09/07(木) 20:51:320575デフォルトの名無しさん
2006/09/08(金) 12:17:10普通のlz77(lzss)のがコード量同規模で数割程度圧縮率高いけど圧縮速度が
0576デフォルトの名無しさん
2006/09/08(金) 13:43:27zlib のソース・アーカイブの examples/ ディレクトリをまず見たら。
zpipe.c ってのもあるし。
そうそう、ソース とか 英文ドキュメントなら
http://zlib.net/ から辿れるよん。
0577デフォルトの名無しさん
2006/09/08(金) 16:23:590578デフォルトの名無しさん
2006/09/11(月) 08:24:10今更だけどもう公開してないのね
0579デフォルトの名無しさん
2006/09/15(金) 13:48:07消す事ないだろうに。
0580デフォルトの名無しさん
2006/09/25(月) 20:29:29poly: 0x8005, width: 16, init: 0x0000, revin: yes, revout: yes, xorout: no
なんだな。
ファイルのチェックによく使われるCRC16が、
poly: 0x1021, width: 16, init: 0xFFFF, revin: yes, revout: yes, xorout: no
だから、 poly と init が違う。
unlha32.dll で展開したファイルが正常かどうか FastHash.dll を使って確認しようと思ったら、
ことごとく値が違うからハマってしまった。
0581デフォルトの名無しさん
2006/09/27(水) 22:54:40CRC16 って言っても色々あるわけだし。
ttp://en.wikipedia.org/wiki/Cyclic_redundancy_check#CRCs_in_common_use_.28in_ITU-IEEE_syntax.29
0x8005 の方が ANSI(↑だと IBM になってる)、0x1021 の方が CCITT っすね。
0582デフォルトの名無しさん
2006/10/10(火) 10:43:26BIPという圧縮データが展開できなくて困っています。
同じ名前のbinファイルに出来れば良いのですが……
ググってみると、頭4バイトが展開後のサイズ〜
などの解説ページも見つかりますが、よく分かりません
どんな圧縮になっているのか、知っている方いませんか?(展開方法)
0583デフォルトの名無しさん
2006/10/10(火) 11:17:38「bip 頭4バイト」でググって、多分同じページにたどり着いた・・・
正直、胡散臭い用途にしか思えんのでマジレスしたくないんだがw
軽く読んだ感じ、ちょっと変わったLZ77ってだけのよーな
そこに書いてる情報で充分だろ。何が足りない?
0584デフォルトの名無しさん
2006/10/10(火) 11:53:25LZ77っぽいのは分かったのですが
自分の知識不足で、そこに書いてあることが完全に理解できていません
・展開位置からの12bit負のオフセットにして、その位置から長さ+3バイトのデータをコピー
とか
0585デフォルトの名無しさん
2006/10/10(火) 12:21:400586デフォルトの名無しさん
2006/10/10(火) 12:24:43LZSSを勉強してきて・・・イヤマジで
「lzss」は一般的な方式だし、説明ページも豊富だから
0587デフォルトの名無しさん
2006/10/10(火) 12:49:1712ビットの単純なスライディング辞書方式の簡易な説明に読めるが・・・
何がわからんのか解らない。
引用部以外に意味不明な部分があるのか?
0588デフォルトの名無しさん
2006/10/11(水) 00:13:02スレ汚し失礼しました
0589デフォルトの名無しさん
2006/10/11(水) 07:15:22どうやらインターフェース誌で連載してる模様。
ちら見だけどWebとほぼ同じ内容ぽい。
0590デフォルトの名無しさん
2006/10/12(木) 08:41:03本当だw
教えてくれてありがとー
番外編もやってくれれば最高!
0591デフォルトの名無しさん
2006/11/03(金) 05:22:58拾って来たZIPなんですが
中国語文字コードでファイル名・パス指定されているらしく
解凍レンジとかだと
win9x上で解凍できませんw
いいソフトありますか?
0592591
2006/11/03(金) 05:57:50VB6使いだったがw
特別に
とりあえず、こういう場合に簡単に取り出せるソフト教えてw
0593デフォルトの名無しさん
2006/11/03(金) 08:01:130594デフォルトの名無しさん
2006/11/06(月) 18:01:41http://nog0709.hp.infoseek.co.jp/reports.html
0595デフォルトの名無しさん
2006/11/10(金) 16:16:05これは参考になるな
0596デフォルトの名無しさん
2006/11/19(日) 08:50:56bz2形式の圧縮ファイルの元のファイルサイズを
実際に展開せずに知る方法はないでしょうか?
0597デフォルトの名無しさん
2006/11/19(日) 11:16:30ないっちゃね
0599デフォルトの名無しさん
2006/11/21(火) 00:23:19UnRAR Sourcecode 3.4.3とうのしかなさそうなんですが、これでいいんでしょうか?
0600デフォルトの名無しさん
2006/11/21(火) 15:24:40パスワード展開には対応していないな。。。
0601599
2006/11/24(金) 00:17:06どうも。
人いないんですかねこのスレ。
winrarのサイトでもうちょっ新しいunrarsrc-3.6.8.tar.gzがありました。
MacOSXのソフトでもunrarを使っているようなので、これで良いのかもしれません。
0602デフォルトの名無しさん
2006/11/28(火) 00:16:52何の画像形式が、ご存知の方いらっしゃいませんか?
0603デフォルトの名無しさん
2006/11/28(火) 01:51:24fileさんによると
> uporg596558.bin: Hitachi SH big-endian COFF object, not stripped
だってよ? 画像じゃなくて実行ファイルじゃ
と思ったが中身見てみると確かに32bitの色情報くさい感じはするな。
適当に作画させてみたらどうか?
0604603
2006/11/28(火) 03:00:22ttp://www.uploda.org/uporg596801.png.html
640x480の32bit生データなんだがどうも縦16でblock化(?)されているらしく、
そのままbmpのヘッダ付けただけだとだめっぽい。
とりあえず↑のは512x608にして、mspaint使って手動で再構成してみたが、
横512なあたり考えると3D作画エンジン用のテクスチャかなんかかの。
こんなバカなことせんでもなんかのツールにぶちこんだら普通に表示されるような気がするようなしないような。
詳しい人フォロー頼む。3D関係は全然ワカラン。
っか、圧縮なんかされてねーからぶっちゃけスレ違いな気ガス
ところで画像の詳細を教えてもらおうか
0605デフォルトの名無しさん
2006/11/28(火) 23:38:27ありがとうございます
参考にします
0606デフォルトの名無しさん
2006/12/15(金) 18:02:11http://p7zip.sf.net のソース読んでいたら、
7zip/Crypto/ 以下に rar やら zip でパスワード付けた時の処理があった。
各圧縮ファイル形式のファイルヘッダや通常の解凍などは
7zip/Archive/ 以下だったりするけど。
0607デフォルトの名無しさん
2007/01/06(土) 23:01:26これってひょっとして全部リトルエンディアンなの?
しかもハフマンは右(LSB)から1bitずつ読むわけ?
なんか統一感が無くて判り辛いよ。
なんでこれが普及したんだろ。
0608デフォルトの名無しさん
2007/01/11(木) 19:32:550609デフォルトの名無しさん
2007/04/06(金) 10:41:33詰まってしまいました。
未対応なら他の方法を考えるんですが。
0610デフォルトの名無しさん
2007/04/09(月) 15:13:030611デフォルトの名無しさん
2007/04/20(金) 01:57:42H.264の詳細は、一般人でも入手出来ますか?
何をやってるかは大体は情報が手に入るんだけど、実装できるレベルの資料がない・・・。
0612蕪木ら某 ◆Googl8RmwA
2007/04/21(土) 00:52:25http://www.itu.int/rec/T-REC-H.264/en
http://www.itu.int/rec/T-REC-H.264.2/en
http://www.compression-links.info/MPEG-4_AVC_H264
http://www.mpegla.com/avc
etc.
0614デフォルトの名無しさん
2007/04/29(日) 07:49:00クラスとSTLの勉強だけだ、おれなんてC++からはじめたし
0615デフォルトの名無しさん
2007/05/19(土) 14:37:33辞書順にソートされた文字列のリストを、検索可能なままで
高圧縮できるアルゴリズムってありますか?
BPEしてcommon prefixを削除すれば、1/3までは小さくは
できたのですが、もっと効率いいのがあれば
0616デフォルトの名無しさん
2007/05/20(日) 00:10:18必然的に圧縮率が落ちるよ。
ブロックソートなんかはソート済みデータには弱いから多分ダメ。
PPMは遅い。
今のままで十分かと。
もうやってるかもしれんがprefix毎にブロックにすると圧縮率が良くなる。
prefixでソートされてるんだから辞書全体に対してsuffixを登録して
prefix単位でブロックを作るのがいいかも。
0617デフォルトの名無しさん
2007/05/20(日) 00:19:10>ブロックソートなんかはソート済みデータには弱いから多分ダメ。
別に弱くは無いよ。
原理的にはPPMと同じ。
0618デフォルトの名無しさん
2007/05/20(日) 02:58:38FM-index とかどうよ?
0619デフォルトの名無しさん
2007/05/20(日) 10:49:08んなこたーない。
0620617
2007/05/21(月) 10:17:01その辺のことはDO++が説明してたよ。
アルゴリズムとしては違うけど、結局圧縮しているものが同じってこと。
0621デフォルトの名無しさん
2007/05/21(月) 19:58:43abcdからeを符号化するのがPPM
bcdeからaを符号化するのがBWT
という意味では同じかもしれんけど
BWTは決められたブロック内の情報のみ
PPMはそれまでに出現した情報のみである点が違う。
つまり任意のシンボルが参照できる情報の範囲と質が大分違う。
0622617
2007/05/22(火) 10:03:19>BWTは決められたブロック内の情報のみ
>PPMはそれまでに出現した情報のみである点が違う。
>つまり任意のシンボルが参照できる情報の範囲と質が大分違う。
範囲なんて調整次第。
PPMだって現実に実装するときはブロックに分けることになるから。
違いは、
BWTはPPMでは未来の出現に相当する部分の情報も使う。
PPMは、それまでに出現した過去のみの情報を使う。
ってぐらい。
ただ、未来の出現といっても、時系列情報を失うので、BWTが特に優位というわけでもない。
0623デフォルトの名無しさん
2007/05/22(火) 13:09:12やっぱりPPMとブロックソートは違うものだって結論に変わりはなさそう。
0624617
2007/05/22(火) 13:14:26616の指摘はおかしいということ
0625デフォルトの名無しさん
2007/05/22(火) 15:13:05ttp://www.maximumcompression.com/data/dict.php
0626デフォルトの名無しさん
2007/05/22(火) 15:15:130627デフォルトの名無しさん
2007/05/25(金) 18:23:120628デフォルトの名無しさん
2007/05/28(月) 20:23:27特許に抵触しないフリーなやつでお願いします。
0629デフォルトの名無しさん
2007/05/28(月) 20:41:10最近のCPUはめっちゃ速いから、ファイルアクセスやってる間に
だいたい圧縮処理が終わっちまうんじゃね?
0630デフォルトの名無しさん
2007/05/28(月) 22:26:530631デフォルトの名無しさん
2007/05/28(月) 22:44:080632デフォルトの名無しさん
2007/05/28(月) 23:58:410633デフォルトの名無しさん
2007/07/08(日) 12:59:07______
/ // /|
| ̄/  ̄ ̄,:|//!
|/_,,..,,,,_ ./ .!/|
| ./ ,' 3/`ヽ::|っ.!
| l /⊃ ⌒.|つ|
|/ー---‐'''''"|/
 ̄ ̄ ̄ ̄ ̄
解凍
、ゞヾ'""''ソ;μ,
ヾ ,'3 彡
ミ ミ
彡 ミ
/ソ,, , ,; ,;;:、ヾ`
エラー
_,,..,,,,,,..,,,,,..,,,,,,..,,..,,,,,,..,,,,,,,,..,,,,_
/ ,' 3,' 3,' 3,' 3,' 3,' 3' 3,' 3, `ヽーっ
l ⊃⊃⊃⊃⊃⊃⊃⊃⊃. ⌒_つ
`'ー---‐---‐---‐---‐---‐'''''"
深刻なエラー
_,,..,,,,_
./ 。 `ヽーっ
l o 3 ⌒_つ
`'ー---‐'''''"
0634デフォルトの名無しさん
2007/07/25(水) 08:05:28c_i が元の符号(符号長 n で固定)で d_i をその圧縮後の符号として
Σ len(d_i)/Σ len(c_i)
とか計算したら大体どんな圧縮法でも大体1より
ちょっと大きくなるくらいになるよね?
0635デフォルトの名無しさん
2007/08/10(金) 18:57:30あるいは拡張子を.CABに変えると出来たりするんだが…
それでも展開しにくいファイル、というのはあって、
ツールによって展開出来たり出来なかったりする。
で、そういうファイルを調べてみたら、ヘッダ("MSCF〜")らしきものが複数あって、
最初のヘッダは不正で、3番目のヘッダが正解だった。
単にファイルの先頭からヘッダらしきものまで読み飛ばすだけだと、
こういうのに対応出来ないわけだ。
これ、確実な調べ方あるんだろうか?
それともヘッダらしきものを総当りで調べるんだろか?
0636デフォルトの名無しさん
2007/10/15(月) 02:36:44フォルダ(ディレクトリ)をアーカイブファイルで保存・管理することを考えています。
そのとき、アーカイブのデータを使って元のフォルダの差異が知りたいのですが、
なにかうまい方法(「展開して差分」以外で)はあるでしょうか。
例えばフォルダAとフォルダBの内容が等しいかどうか(具体的には再帰的にファイル
内容の差分(Unix なら diff -r)をとって差があるかどうか)を、対応するアーカイブAと
アーカイブBの差から知りたいのです。
フォルダAとフォルダBの内容が等しい <=> アーカイブデータが等しい
となるようなアーカイブができるとうれしいのですが。
一般的なアーカイブフォーマットにはメタデータ(タイムスタンプ等)が含まれたりして、
アーカイブの単純な差分では駄目なようです。上記の目的のためにはタイムスタンプ等
はいりません。
よろしくお願いします。
0637デフォルトの名無しさん
2007/10/15(月) 03:34:02比較するだけでいいと思うが。
で、ここがプログラム板だということは分かっているんだろうか?
0638デフォルトの名無しさん
2007/10/15(月) 10:11:4912
1121
122111
112213
0639デフォルトの名無しさん
2007/10/15(月) 11:53:080640デフォルトの名無しさん
2007/10/15(月) 12:29:080641デフォルトの名無しさん
2007/10/15(月) 12:33:290642デフォルトの名無しさん
2007/10/15(月) 20:06:04いつのまにそんなの取り上げるようになったんだww
0643デフォルトの名無しさん
2007/10/17(水) 04:34:09どうしようorz
0644デフォルトの名無しさん
2007/10/18(木) 02:32:301123123111
12213111213113
11221131132111311231
なんか3が出てきた時点で急速に発散
0645デフォルトの名無しさん
2007/10/31(水) 03:22:230646デフォルトの名無しさん
2007/10/31(水) 04:27:380647デフォルトの名無しさん
2007/10/31(水) 08:53:090648デフォルトの名無しさん
2007/10/31(水) 16:23:270649デフォルトの名無しさん
2007/11/09(金) 12:30:470650デフォルトの名無しさん
2008/02/21(木) 20:27:21どうしてですか?
0651デフォルトの名無しさん
2008/02/21(木) 20:29:390652デフォルトの名無しさん
2008/02/21(木) 23:07:200653デフォルトの名無しさん
2008/02/22(金) 03:07:190654デフォルトの名無しさん
2008/02/22(金) 08:45:44ラプラスって、ラプラス変換? あれは圧縮とは別次元だぞ。
例えば、CR(コンデンサー+抵抗)の回路などで作った
フィルターの特性を一次式に変換するとかそういう奴でしょう。
確かに、フィルターかましたり、
わざと見えないくらいのノイズを載せたりして
圧縮効率を上げる技はあるけど、
常に圧縮率が良くなるという話でもなかったりします。
0655デフォルトの名無しさん
2008/02/22(金) 08:58:12BWTとかPPM系でもそこそこの速度で動くでしょ
それよりマルチコアが一般的になったからマルチスレッド動作可能なのを考えたい
まあデータを分割して既存のアルゴリズム適用すればいいだけの話だけど
0656デフォルトの名無しさん
2008/02/29(金) 03:42:53どうすれば良いでしょうか?
c:\aaa\bbb\ccc\ddd\file.txt
とある場合に、cccフォルダ以下を圧縮したいのですができません。
オプションで-rを指定するとaaaフォルダから圧縮され、
-rjを指定するとccc以下のテキストが指定した作成したzipファイル
直下に格納されます。
ちなみに、コマンドラインの圧縮対象には「c:\aaa\bbb\ccc」を
指定しています。
0657デフォルトの名無しさん
2008/10/10(金) 08:59:48定番のUNZIP32.DLLでは書庫をOPENするのにとても時間掛かります。
最近出たINFO-ZIP最新版だと軽いですか?
0658デフォルトの名無しさん
2008/10/10(金) 09:08:16ファイルの一覧取るくらいなら、圧縮とか気にしなくていいし
0659デフォルトの名無しさん
2008/10/10(金) 09:12:02すみません。ひとつひとつファイル名を取得して、あと個々に(メモリ上へ) 解凍もしたいんです。
速度が出ていいやつありませんか? UNZIP32.DLLはオープンに時間掛かるのでは除外します。
0660デフォルトの名無しさん
2008/10/10(金) 09:14:450661657
2008/10/10(金) 10:36:48UNZIP32では、1分待っても反応無しのが
7-zipにしたところ30秒で済み
XacRettではなんと0.3秒でopenデキマシタ。
0662657
2008/10/10(金) 10:45:380663デフォルトの名無しさん
2008/10/10(金) 13:51:38得手不得手ってのがあるんだしさ。
0664657
2008/10/10(金) 16:22:180665デフォルトの名無しさん
2008/10/10(金) 16:26:370666デフォルトの名無しさん
2008/11/04(火) 10:09:010667デフォルトの名無しさん
2008/11/04(火) 17:11:110668667
2008/11/05(水) 00:20:400669デフォルトの名無しさん
2008/11/05(水) 19:45:49OSが64ビットLinuxだったら動かない。
……と言うボケは置いておいて。
XPは知らんがVistaではとりあえず動く。
動くけどそのDLLを使うソフトも32ビットじゃなくちゃダメ。
もっともそのDLL使うと明言していて64ビットで作ってる馬鹿はいないはずだが。
0670デフォルトの名無しさん
2008/11/11(火) 16:36:210671デフォルトの名無しさん
2008/11/12(水) 08:43:01ただ前も言うことをコロコロと変えているので、安心とは言えない気がする
0672デフォルトの名無しさん
2008/11/12(水) 19:40:180673デフォルトの名無しさん
2009/01/08(木) 08:17:561よりちょっと大きいだけって、ほとんど圧縮出来てないんじゃね?
0674デフォルトの名無しさん
2009/01/10(土) 17:54:00上のように、復元したものの文字列を直すフリーソフトってありませんか?
メモ帳のものを復元できたと思ったら、文字化けしていました。
0675デフォルトの名無しさん
2009/01/10(土) 21:09:510676デフォルトの名無しさん
2009/01/16(金) 15:05:14.ewaという拡張子で暗号化・圧縮・分割・結合する
海外のソフトウェアを知りませんか?
1990年代後半に使われた物らしいですが
ソフト名がわからず困っています
0677デフォルトの名無しさん
2009/01/16(金) 20:15:400678デフォルトの名無しさん
2009/01/28(水) 22:44:59そのゲームで使う画像・音声ファイルを、どうやって1つのファイルに格納しようか迷っています
最初は自分でフォーマット決めて、各ファイルを順々に詰めていけばいいかと思ってたんですが
よく考えたらtarや無圧縮zipなどを使った方が
既存のライブラリを使える分、もっと楽だということに気づきました
こうした用途に向いているのは、どの圧縮形式でしょうか?
0679デフォルトの名無しさん
2009/01/28(水) 23:10:420680デフォルトの名無しさん
2009/01/29(木) 01:49:370681デフォルトの名無しさん
2009/01/29(木) 07:53:37ただ、自分でやった方が高速軽量になると思う。
単にまとめるだけにしては高機能杉るんだよtarは。
0682デフォルトの名無しさん
2009/01/29(木) 08:23:15tarはソリッド圧縮的な扱いでそういうの苦手だった気がするが
最近はその辺を改良したtarがあるのか?
そういう意味では個別抜き出しできそうなフォーマットで無圧縮使えばいい。
ライセンス的にLGPLで問題ないなら7-zipが明確。Zipはライセンス料発生するかもしれない。
0683デフォルトの名無しさん
2009/01/29(木) 14:29:22BSDライセンスでコードも短い。圧縮は64k毎のデータの圧縮を連結している感じ。
ライセンスがある程度自由だと、自作のファイルフォーマットに組み込みやすい。
0684678
2009/01/30(金) 09:53:21まとめると
1. 自分で詰め込む
2. 7-zipやliblzfを用いる
の2種類が適切なようですね。調べつつ考えてみます
0685デフォルトの名無しさん
2009/01/30(金) 10:29:49osaskのsar
0686デフォルトの名無しさん
2009/01/30(金) 12:41:08仕様やライブラリが公開されていないようなのですが
どこかに置いてあるのでしょうか?
0687デフォルトの名無しさん
2009/03/09(月) 12:54:48http://cs.fit.edu/~mmahoney/compression/text.html#6368
…ロシア語読めなさ杉ワロタ
0688デフォルトの名無しさん
2009/03/15(日) 10:42:470689デフォルトの名無しさん
2009/09/14(月) 14:40:40サーバからクライアントにZip圧縮したバイナリデータを送信して、クライアントのメモリ上で解凍する必要があります。
(ファイルにはしないで、ストリームデータです。)
このときに使用できるdllやライブラリを探しているのですがご存知の方はいないでしょうか?
unzip32.dllでは無理ですよね。
環境はWindwsXpです。
0690デフォルトの名無しさん
2009/09/14(月) 16:47:040691デフォルトの名無しさん
2009/11/08(日) 01:21:00rar3形式かどうか判定出来るだけでも機能が欲しい。
hexdumpしてみたけど、RAR3みたいなバージョン文字列は無い様なので、同じバイトコード列かどうか判定するしかない?
眺めた感じだと、1バイト目から16バイト目までのバイト列と、45バイト目から48バイト目までのバイト列で判定すればいいの仮名?
unrar.dllでReadHeader(Ex)を使い、RARHeaderData::UnpVerの値を読んでやると分かるかもしれません。
0693デフォルトの名無しさん
2009/12/05(土) 01:34:53どのようにすればいいでしょうか?
例.値(10進)「3 3 6 3 6 2」
3・・・00
6・・・01
2・・・100
出力後のファイル(2進)「0000010001100」
最低1バイト単位でファイルに出力したいのですがググっても分かりません・・・
因みにVS C++ です。
スレチを承知ですが、宜しくお願いします。
0694デフォルトの名無しさん
2009/12/05(土) 02:04:270695デフォルトの名無しさん
2009/12/05(土) 02:33:55C/C++の宿題片付けます 132代目
0696デフォルトの名無しさん
2009/12/11(金) 03:16:25250kb程度のJPG画像の可逆圧縮で圧縮したら一般的にどの程度なんだろ?
原本JPG->204704byte
rar->204697byte
zip->203342byte
作ったやつ->152822byte
俺最高wwww
0697デフォルトの名無しさん
2009/12/11(金) 13:43:46単色なら数バイトに出来るんじゃね。
0698デフォルトの名無しさん
2009/12/11(金) 13:48:09zlibのソースを見るといいですよ。
0699デフォルトの名無しさん
2009/12/11(金) 23:34:00お前は単色の白や黒が一般的なのか(笑)
0700デフォルトの名無しさん
2009/12/11(金) 23:43:32うるさーい。
0701デフォルトの名無しさん
2009/12/12(土) 03:57:210702デフォルトの名無しさん
2009/12/12(土) 04:19:52某人気漫画家の作品のような状態で放置されたファイルもたくさんあるだろうし。
0703デフォルトの名無しさん
2009/12/12(土) 20:47:38配布のためには用を為さないな
0704デフォルトの名無しさん
2009/12/12(土) 21:22:540705デフォルトの名無しさん
2009/12/12(土) 21:52:21必ず解凍確認ダイアログが表示されてしまうので、7zip.dllに乗り換えました。
解凍確認ダイアログ消す方法ってあるんですかね?
0706デフォルトの名無しさん
2009/12/12(土) 22:26:14や、単なるモノクロ絵を配布はあまりしないだろうという話
「解凍確認ダイアログ」というのがよく分からないので、間違っていたらすみません。
展開時の上書き確認ダイアログのことであれば、(統合アーカイバの)unzip32.dllでは-oスイッチで自動上書きにできるかと思います。
展開時の進捗状況を表示するダイアログのことであれば、(統合アーカイバの)unzip32.dllでは--iスイッチで消せるかと思います。
7zip.dllが7-zip32.dllなのか7z.dllなのか、あるいは他のdllなのかも分かりませんが、
7-zip32.dllであれば、それぞれ-aoスイッチと-hideスイッチが該当するかと思います。
info-zipのunzip32.dllや7z.dllについてもおそらくその類のダイアログを表示しない方法はあると思います。
的外れな回答をしていたらすみません。
0708デフォルトの名無しさん
2009/12/15(火) 23:33:39的外れではなく、合っていますw
「解凍確認ダイアログ」というのは、解凍終了しました等、解凍した(何か動作した)と分かるようなPOPUP画面の事です。
自動上書き、進行状況非表示を引数で指定したのですが、進行状況を表示するための空のPOPUP画面がどうしても消えませんでした。(進行状況自体は消えましたが)
readmeを見たのですが、
それらしきオプションもなく断念しました。
すみません。開発者用sdkのUNZIP32S.txtに次のように書かれていました。
> また、標準で結果窓が表示されるようになってます。これを禁止するには以下のレジストリに ShowResult と言う DWORD 値を作成し、0に設定してください。0 のかわりに 0xFFFFFFFF とすると、エラーがあったときだけ結果窓が表示されます。
> HKEY_CURRENT_USER\Software\ArchiverDll\UNZIP32\Settings\
UNZIP32.APIに記されている内容によれば、この設定は初期値でoffになっているようですが、何かの拍子に設定が変えられてしまっていませんでしょうか。
0710デフォルトの名無しさん
2010/01/09(土) 05:12:02これもうダウンロードできないけど
持っている人いないかな?
0711デフォルトの名無しさん
2010/01/09(土) 17:32:12ここは作る方の板だ
0712デフォルトの名無しさん
2010/01/09(土) 19:02:460713デフォルトの名無しさん
2010/01/09(土) 21:17:110714デフォルトの名無しさん
2010/01/09(土) 21:32:01でも「データ復活/完全削除」超えるフリー無いな
0715デフォルトの名無しさん
2010/03/08(月) 15:02:331bit目は開始するbit
1000→113
0110→0121 となる
7以上は0をはさむ(7かどうかは未定)
0101 1000 0000 0010
なら
0111270211
3桁ずつに分け、3の倍数にならなければ0を付与する
011 127 021 100
3桁(999)は10bit(1023)あれば足りるから
0101 1000 0000 0010
は
0000001011 0001111111 0000010101 0001100100
となる
あ…ありのまま 今 起こった事を話すぜ!
『自作の新圧縮方式を試していたら
いつのまにか容量が増えていた』
な… 何を言ってるのか わからねーと思うが
俺にもわからねえ
0716デフォルトの名無しさん
2010/03/08(月) 15:29:45それ、どう見てもランレングスだと思うけど。
新しいどころか、何十年前の話だ。
0717デフォルトの名無しさん
2010/03/08(月) 16:25:31この時点でおかしいw
0718デフォルトの名無しさん
2010/03/08(月) 16:27:380719デフォルトの名無しさん
2010/03/09(火) 13:06:30全く同じでワロタ・・結構いいと思ったんだけどなぁ・・
>>717
113は
一文字目が'1'で始まる、二文字目は一文字目の数字が'1'つ続く、
三文字目は前と反転しているビットが'3'文字続く、の意味
そんなことしなくてもwikipediaみたいに・・
そもそもとっくにあるものの劣化版なのでどうでもいいな・・
0720デフォルトの名無しさん
2010/03/09(火) 20:44:270721デフォルトの名無しさん
2010/03/10(水) 14:11:25これって良く見るけど
そこ?
てい?
どっちですか
0722デフォルトの名無しさん
2010/03/10(水) 15:05:290723デフォルトの名無しさん
2010/03/10(水) 16:52:420724デフォルトの名無しさん
2010/03/10(水) 17:39:36でもなんで 2.71828182845904523536028・・・ みたいな変な数字なんだろ
0725デフォルトの名無しさん
2010/03/10(水) 17:43:26だからさ
0726デフォルトの名無しさん
2010/03/10(水) 18:03:19分野によって10(工学関係とか)2(情報関係とか)が底のこともある。
2とかそれ以外が底だったら普通は明示される。
たいてい10かeが底で、底がeの対数は特にlogではなくlnと書かれたりする
(その場合logで示されるのは底が10)。
ネイピア数(ないしオイラー数)eは (1 + (1 / n)) ** n ( ** は冪乗)の n を∞にした
時の極限(ほかにもいろいろな定義はあるが)。いろいろな性質がある。
たとえば、y = e ** x というグラフの傾きは e ** x であるとか。
0727デフォルトの名無しさん
2010/03/10(水) 18:47:510728デフォルトの名無しさん
2010/03/10(水) 18:53:070729デフォルトの名無しさん
2010/03/10(水) 18:54:060730デフォルトの名無しさん
2010/03/10(水) 18:57:360731デフォルトの名無しさん
2010/03/10(水) 21:02:01例えば10進数で81桁の数値は64進数だと何桁必要か計算するときにlogを使う。
0732デフォルトの名無しさん
2010/03/11(木) 13:26:560733デフォルトの名無しさん
2010/03/11(木) 20:41:090734デフォルトの名無しさん
2010/03/20(土) 17:05:410735デフォルトの名無しさん
2010/03/21(日) 11:57:060736デフォルトの名無しさん
2010/09/17(金) 23:12:570737デフォルトの名無しさん
2010/11/10(水) 20:50:47過去2Byte値から今の1Byte値を"Move To Front"するテーブルを選ぶ
詳しい処理はソースを見てください
http://gmdev.xrea.jp/
[標準10MB] [148.zip] 実験用実行アプリ Delphi4 ソース付き
注意
実行アプリのウイルスチェックはしてません
感染は無いと思いますが自己責任ということで
0738デフォルトの名無しさん
2010/11/10(水) 23:18:20ここで晒してもしょうがないと思うのだけど…
MTFの改良とか一度は考えるよね
実際にやってみると大したこと無くてがっかりっていう
この手のやつをRecency Rankingというのだけど
頻度が考慮されないから算術符号やハフマン符号と比べるとだめなんだな
もっともっと勉強してちょうだい
0739デフォルトの名無しさん
2010/11/11(木) 00:25:010740天使 ◆uL5esZLBSE
2011/07/03(日) 13:21:22.140741デフォルトの名無しさん
2011/07/07(木) 21:50:49.65http://gigazine.net/news/20110704_limitless_hdd/
0742デフォルトの名無しさん
2011/07/07(木) 22:30:26.960743デフォルトの名無しさん
2011/07/07(木) 23:25:05.99昔に流行ったπ(円周率)圧縮と原理は同じ
0744デフォルトの名無しさん
2011/07/08(金) 00:41:50.330745デフォルトの名無しさん
2011/07/08(金) 01:54:35.69圧縮と関係ないから。
0746デフォルトの名無しさん
2011/07/18(月) 16:25:30.65あれと似てるねって話だろう。
0747デフォルトの名無しさん
2011/08/20(土) 12:26:41.97�@1Mバイトのランダムなデータ列と2Mバイトのランダムなデータ列をファイルにしてzipにしました。
圧縮率はどっちが高いですか?
�A1Mバイトのランダムなデータ列と1Mバイトの数列(0,1,2・・・ffH・・・)をファイルにしてzipにしました。
圧縮率はどっちが高いですか?
�B1Mバイトの数列(0,1,2・・・ffH・・・)と2Mバイトの同じ数列(0,1,2・・・ffH・・・)をファイルにしてzipにしました。
圧縮率はどっちが高いですか?
できれば、経験的な結果ではなくて、数学的?技術的結果を知りたいです。(経験的結果ももしあれば知りたいです)
よろしくお願いします。
当方ハード屋です。簡単なプログラミングはできるぐらいのキャリアです。
0748デフォルトの名無しさん
2011/08/20(土) 12:41:46.03zipなら自分でやってみればいい。
zipじゃないなら、圧縮率がどうなるかは圧縮アルゴリズムによる。
0749デフォルトの名無しさん
2011/08/20(土) 12:45:01.97レスどうも。
やっぱりやってみないとわからんものですか・・・
理論的にはどう考えたらいいのかを、聞きたかったんですが。
0750デフォルトの名無しさん
2011/08/20(土) 12:51:08.48ランダムデータは多分全く圧縮出来ない
数列が00hからffhの方はもの凄く縮む
123は全て後者の圧縮率が高いよ
>>748の通り実験あるのみ
0751デフォルトの名無しさん
2011/08/20(土) 13:03:32.15レス、どうも。
『データ量が多いほうが圧縮率が高くなる傾向がある』
と考えていいのでしょうか?
また質問ですみません。
0752デフォルトの名無しさん
2011/08/20(土) 13:11:59.31いや、zipはLZ法といって
同じパターンを検出して別の符号で置き換えるという仕組みになってる
ランダムデータは繰り返しがないから圧縮出来ないし
数列の方は00h-ffhが繰り返されるからそこで縮むのよ
0753デフォルトの名無しさん
2011/08/20(土) 13:27:20.28レス、どうも。
よくわかりました。
この場合ランダムデータと言えるか疑問ですが、
もし、ランダムデータでもちょっとでも繰り返しパターンが現れたとして、その大きさも出現率もランダムだとして、この場合少しは圧縮できると思います。
その場合は、
『データ量が多いほうが圧縮率が高くなる傾向がある』
とは理論的に言えないのでしょうか?
実験をして臨床的に?測定はできるでしょうが、まずは頭の中で整理したいので、よろしくお願いします。
0754デフォルトの名無しさん
2011/08/20(土) 13:36:12.73データ(情報源)次第としか言いようがないんだけど
データ量が増えるほど参照可能なデータが増えるので圧縮率は上がる
と言える
ので理屈としてはそれであってる
言うまでもなく計算量は増えるけども
0755デフォルトの名無しさん
2011/08/20(土) 14:12:35.01ありがとうございます。
ですよね。ランダムデータの共通概念を確認してから話すべきでした。
失礼しました。
0756デフォルトの名無しさん
2011/08/20(土) 16:35:41.98次のキーワードについて調べてみるとよいでしょう。
初等的な情報理論の参考書に出ているものです。
情報源(符号化)
エントロピー
ユニバーサル
エルゴード性
エントロピーレート
0757デフォルトの名無しさん
2011/08/20(土) 17:20:35.51どうも。
わからないところが出てきたら、また教えてください。
0758デフォルトの名無しさん
2011/08/21(日) 00:44:08.36やってみないとわからないというより、何を目的に聞いているのかわからないから、答えにくい。
圧縮もzip(LZ法+ハフマン)に限る話なのか、あらゆるアルゴリズムを検討するかによっていろいろ変わってくる。
情報理論的にランダムデータは統計的には圧縮できない。
(圧縮できるケースも0ではないが、できないケースがそれをはるかに上回る)
0759デフォルトの名無しさん
2011/09/08(木) 00:22:45.54実測でも速くなってるとお茶が美味い、でへへ
0760デフォルトの名無しさん
2011/09/22(木) 01:47:33.31もし対象のファイルが複数あり、それぞれ違うドライブの場合、
どのように対応すればよいのでしょうか?
0761デフォルトの名無しさん
2011/10/04(火) 04:33:33.930762デフォルトの名無しさん
2011/10/19(水) 17:21:06.75出来るzipのCRCが毎回違うってのは正常?
WinRAR使うと毎回CRCは同じなんだが
0763デフォルトの名無しさん
2011/10/19(水) 17:53:00.10解凍後のCRCが一致してれば問題なし
0764デフォルトの名無しさん
2011/10/19(水) 18:29:03.25できたzipファイルのCRC、圧縮されたエントリのCRC
どっち?
前者なら最終アクセス時間も記録してるとかって可能性もあるよ。
後者だと理由がサッパリわからんけど。
0765デフォルトの名無しさん
2011/10/19(水) 19:09:18.86なるほど。
確かに解凍後のファイルのCRCは一致してるんで、
実用上問題は無いんですが、ちと気になったもので。
これ常識なのかな、と。
>>764
前者です。
> 最終アクセス時間も記録
これですかね?
0766デフォルトの名無しさん
2011/10/20(木) 22:51:54.070767デフォルトの名無しさん
2011/11/29(火) 22:44:34.18「中央ディレクトリ」の存在意義ってなんですか?
わざわざローカルファイルヘッダと分離して、しかも書庫末端に配置
させている意味がわからないです。
書庫冒頭ならここを基点にランダムアクセスがしやすい、というのは
想像できるんですが、可変長コメントを終端に許容している時点で
後ろから計算するのも非常にめんどくさいことになってますし。
どうせだし作者にメールでも投げるか、と思ったら作者亡くなってるし。
0768デフォルトの名無しさん
2011/11/29(火) 23:04:07.920769デフォルトの名無しさん
2011/11/29(火) 23:11:50.61どうしてもケツにしかつけられないってだけでしょ。
1passで書庫作れるようになってるのはzipの強みの一つだと思うんだが。
例えばlhaはチェックサム書き出すために一旦ヘッダまで戻らなきゃいかんから2passになる。
圧縮データをどっかに保存しておければ1passっぽくできるけど。そのために記憶領域が必要になる。
0770767
2011/11/29(火) 23:20:10.21なるほど。確かに1passで作れるっていうその点は強みですね。
すごいスッキリしました。ありがとう。
0771デフォルトの名無しさん
2011/11/29(火) 23:44:11.23後ろから読むのが楽だったと思わずにはいられない
0772デフォルトの名無しさん
2011/11/30(水) 02:12:31.07書き直さないといけなくなるよ。
末尾にあれば追加された分と中央ディレクトリ分だけで済む。
0773デフォルトの名無しさん
2011/11/30(水) 03:49:27.680774デフォルトの名無しさん
2011/11/30(水) 13:05:45.71先に暗号化してから圧縮すると
圧縮してから暗号化したときに比べて
サイズがかなり大きくなってしまいます
圧縮と暗号化を同時に行うアルゴリズムだと
効率は良くなるのでしょうか?
0775デフォルトの名無しさん
2011/11/30(水) 13:11:04.030776デフォルトの名無しさん
2011/11/30(水) 13:22:50.710777デフォルトの名無しさん
2011/11/30(水) 13:25:01.15どうして暗号化ツールには圧縮機能がなくて
圧縮ツールには暗号化機能がないのはなぜ?
0778デフォルトの名無しさん
2011/11/30(水) 14:22:37.76>>775
0779デフォルトの名無しさん
2011/11/30(水) 14:57:55.250780デフォルトの名無しさん
2011/11/30(水) 15:28:11.94圧縮ソフトは暗号化機能つけてるのも結構あるよね。
0781デフォルトの名無しさん
2011/11/30(水) 15:44:18.700782デフォルトの名無しさん
2011/11/30(水) 15:53:09.430783デフォルトの名無しさん
2011/12/02(金) 05:52:08.41ABCCABBCA
というような並びのデータがあるとして、このままではあまり圧縮に適してないが
これを
ABC
CAB
BCA
と並べて右上から右下斜めに読むと
CBBAAACCB
となって圧縮しやすくなる
これを斜め読みアルゴリズムと名付けた
データを二次元に展開すると読み方は横読み、右下斜め読み、縦読み、左下斜め読みの4種類定義できるが
この4種類を順番に適用して圧縮を繰り返すと、可逆を維持したままファイルサイズをものすごく小さくできるかもしれない
これを回転圧縮法と名付けた
暇な人は論文でも書いてみたらお金になるかも
0784デフォルトの名無しさん
2011/12/02(金) 06:02:58.460785デフォルトの名無しさん
2011/12/02(金) 11:35:07.190786デフォルトの名無しさん
2011/12/02(金) 12:16:26.631 はなっから元のデータを線形合同法で作る
2 シード値のみ保存
やばい 1/10000000000ぐらいいく
誰か論文作れ
0787デフォルトの名無しさん
2011/12/02(金) 12:40:08.630788デフォルトの名無しさん
2011/12/02(金) 12:44:45.720789デフォルトの名無しさん
2011/12/02(金) 14:28:29.130790デフォルトの名無しさん
2011/12/03(土) 11:06:16.82なんで未だに離散コサイン変換+ベクトル量子化で頑張ってるの?
詳しい人おしえて!
0791デフォルトの名無しさん
2011/12/03(土) 11:19:41.21データ自体が小さくなるわけじゃないんだ
0792デフォルトの名無しさん
2011/12/03(土) 11:26:41.080793デフォルトの名無しさん
2011/12/03(土) 12:05:45.58データ自体が小さくなるってことじゃね?
画像の元サイズX、圧縮後のサイズY、枚数N、辞書のサイズZとすると
N*X > N*Y + Z
になってれば圧縮できてるよね。
Nがでかけりゃでかいほど、辞書でかくしてもいいじゃん。
1G
0794デフォルトの名無しさん
2011/12/03(土) 12:22:40.450795デフォルトの名無しさん
2011/12/03(土) 12:49:44.40N*X > N*Y
って、すごい圧縮できそうやん!
コサイン基底なんか使わずに、10GByte分くらいの過剰な基底を用意しとけば、画像なんか超小さくなるべ!
0796デフォルトの名無しさん
2011/12/03(土) 18:32:29.10別に頑張ってないよ。
もっと先の技術はちゃんとあるが、馬鹿は知らなくていいよ。
ハッシュ値(またはそれに類するもの)で元のデータを引っ張って来れる仕組みを圧縮と見なすなら、
ファイル共有ソフトは一種の圧縮であり、winnyなりshareなり、既にある。
0797デフォルトの名無しさん
2011/12/03(土) 18:34:54.58ならないよ。
JPEGエンコーダなんて一日もあれば作れるから、本当にそう思うなら作って実験してみようよ。
そうすることで自分の愚かな間違いにちゃんと気が付けるよ。
0798デフォルトの名無しさん
2011/12/03(土) 19:04:11.19ところが、このハノイ圧縮で、世界中のデータを圧縮していくと、
たちまち圧縮できなくなっていき、かえってサイズが増えることになる。
ちょっと試算してみるとわかるけど、
データ圧縮が圧縮となる世界って、非常に狭いんだよね。
ハノイ圧縮で圧縮できている範囲だけ利用するとしても、
結局それは、現在の他のデータ圧縮法よりは多少マシかなぁ程度。
ハノイ圧縮とLZ78を比べると面白いかもしれない、程度。
0799デフォルトの名無しさん
2011/12/03(土) 20:28:46.35圧縮アルゴリズム構築時に既知のデータと、圧縮時に未知のデータと分けて考える必要があるね。
ちなみに非可逆ね。
アルゴリズム構築時にハッシュテーブル作っておいて、様々な未知データに対してハッシュ値計算してハッシュテーブルを引く。
ハッシュテーブルにハッシュ値がなかったら、圧縮画像=真っ黒画⇒像残差デカイってこと。
残差小さくしつつ圧縮率上げるんだから、非可逆の圧縮アルゴリズム考えてる人たちは、この間を責めてるわけだよな。
COS関数という既知の基底以外でも、ウェーブレットみたいに基底も学習しておけば、圧縮率上がるケースも当然あるだろうね。
0800デフォルトの名無しさん
2011/12/03(土) 20:31:16.19基底を10000万個用意しておいても良いわけだ。
圧縮したい画像の枚数が多ければ、10000万個基底用意しておいたとしても、勝てる場合がありそう。
0801デフォルトの名無しさん
2011/12/03(土) 20:49:07.46ちなみに、10000次元の係数の大半がゼロになるように、L1正則化でもかけて、基底学習できればよさげだな。馬鹿馬鹿いってるやついるけど、血の巡り悪そうだな。
0802デフォルトの名無しさん
2011/12/03(土) 21:55:07.14隣り合うピクセルの色が近いからCOSで基底変換すると、高周波数成分が0になっるって気付いた奴がいるわけだよね。
そいつは、何枚かの画像(学習データ)を観察して、それに気付いたわけだ。
そして、未知の画像に対しても、同様の統計的性質があるに違いないと思った。これが暗にあるわけだな。
>>796
ちゃんと辞書のサイズZって書いてあるだろ。
ハッシュの先に格納されてるデータがあって、そこのサイズも考慮すれば、それって圧縮できてないよね。
0803デフォルトの名無しさん
2011/12/03(土) 22:49:37.030804デフォルトの名無しさん
2011/12/03(土) 23:10:54.750805デフォルトの名無しさん
2011/12/03(土) 23:20:20.810806デフォルトの名無しさん
2011/12/03(土) 23:24:13.18bzip2を知らんのか。
0807デフォルトの名無しさん
2011/12/03(土) 23:58:56.90流れを読めよ
0808デフォルトの名無しさん
2011/12/04(日) 00:04:18.76お前Linuxのインストールで躓いたくちだろ。
0809デフォルトの名無しさん
2011/12/04(日) 00:07:16.850810デフォルトの名無しさん
2011/12/04(日) 00:17:57.420811デフォルトの名無しさん
2011/12/04(日) 00:19:41.820812デフォルトの名無しさん
2011/12/04(日) 00:24:16.25まずLinuxの勉強からやり直せ。
0813デフォルトの名無しさん
2011/12/04(日) 00:25:10.020814デフォルトの名無しさん
2011/12/04(日) 00:28:07.220815デフォルトの名無しさん
2011/12/04(日) 00:56:55.25えっ
0816デフォルトの名無しさん
2011/12/04(日) 00:58:14.310817デフォルトの名無しさん
2011/12/04(日) 00:59:28.04お前は圧縮ユーティリティーがCUIとして作られたことも知らないのか。
0818デフォルトの名無しさん
2011/12/04(日) 00:59:33.370819デフォルトの名無しさん
2011/12/04(日) 01:00:20.110820デフォルトの名無しさん
2011/12/04(日) 01:00:53.140821デフォルトの名無しさん
2011/12/04(日) 01:03:49.60それは車輪の再発明と言って優秀なリソースを分散させる結果となる。
0822デフォルトの名無しさん
2011/12/04(日) 01:07:07.610823デフォルトの名無しさん
2011/12/04(日) 01:09:20.06bzip2を知らんのか。
0824デフォルトの名無しさん
2011/12/04(日) 01:11:00.950825デフォルトの名無しさん
2011/12/04(日) 01:13:36.24なにか対策を考えて欲しい。
もう2chでは無理かね。
0826デフォルトの名無しさん
2011/12/04(日) 01:13:58.37>LHAは、奥村晴彦が開発したアルゴリズムをもとに、吉崎栄泰がMS-DOS向けに開発したもので、1988年にパソコン通信で初公開された。
ttp://ja.wikipedia.org/wiki/LHA
0827デフォルトの名無しさん
2011/12/04(日) 01:16:49.730828デフォルトの名無しさん
2011/12/04(日) 03:17:42.97だから、やってみろよ。自分が馬鹿だったってわかるから。
0829デフォルトの名無しさん
2011/12/04(日) 03:29:31.18全然違うよ。
JPEGのエンコーダを書いたこともなく、ろくに理解もしないで何言っているの?
統計的性質なんて関係ないから。
>ちゃんと辞書のサイズZって書いてあるだろ。
共有しているなら、辞書がネットワーク上にあったっていいだろ。
ローカルストレージに限定する理由はない。
>ハッシュの先に格納されてるデータがあって、そこのサイズも考慮すれば、それって圧縮できてないよね。
本当に馬鹿だな。
ネットワーク全体で冗長度が下がっていれば、それは圧縮と同じなんだよ。
ハッシュは、辞書の符号化に相当する。
0830デフォルトの名無しさん
2011/12/04(日) 06:10:22.03>統計的性質なんて関係ないから。
JPEGエンコーダってDCTしてハフマン符号化じゃねーのかよ。
統計的性質使って圧縮してんだろ、馬鹿か?
全然違うって、何が違うか指摘しろよ。議論の基本を知らないのか?
>共有しているなら、辞書がネットワーク上にあったっていいだろ。
>ネットワーク全体で冗長度が下がっていれば、それは圧縮と同じなんだよ。
ならハッシュ値計算してデータをひっぱってくるシステムも、圧縮できているわけだな。
今現在ある全ての画像を一箇所に溜めて、未来に撮影される画像もそこに含まれていれば、圧縮できていると言えるだろうな。
とりあえず、学習データで圧縮アルゴリズム作って、検証用のデータで精度を測るって、基本は理解してるか?
0831デフォルトの名無しさん
2011/12/04(日) 08:54:51.86こいつ最高にアホ(AAry
0832デフォルトの名無しさん
2011/12/04(日) 09:36:28.61100枚画像があって、20枚重複してて、実質80枚分のデータだったら、サイズ0.8倍になるのね。
DCTとハッシュマップの間を責めれば圧縮率あがるだろってことでしょ?
0833デフォルトの名無しさん
2011/12/04(日) 12:21:13.24初心者はWindowsでも使ってろ。
0834デフォルトの名無しさん
2011/12/04(日) 17:45:11.22>JPEGエンコーダってDCTしてハフマン符号化じゃねーのかよ。
そうだよ。で、君はJPEGエンコーダぐらい書いたことあるんだよね?
俺はちゃんと0から自作したことあるよ。
>統計的性質使って圧縮してんだろ、馬鹿か?
どこが?
DCTは統計とは関係がないし、ハフマン符号は対象データの中での出現頻度であって、
先の様々な画像の統計的性質とは無関係だよ。
量子化テーブルをどういうものにするかは、ある統計的な性質と関係あるが、
それは画像の統計的性質じゃなくて、人間が見たときに許容できる誤差としての統計的性質。
>全然違うって、何が違うか指摘しろよ。議論の基本を知らないのか?
こんな枯れた技術は議論する価値もないだろ。
調べればわかるし、わからないような馬鹿や、調べることもできないような馬鹿はここに来るな。
最低限、自分のアイデアを自作してみてからここに来い。
その上で、わからないことがあれば、俺様が教えてやる。
0835デフォルトの名無しさん
2011/12/04(日) 17:46:44.08持ってる jpeg ファイル全部 webp 化して
元の画像捨てても平気?
0836デフォルトの名無しさん
2011/12/04(日) 18:12:14.39お前が今後使うブラウザやビュアが対応しているならいいんじゃね
可逆モードもあるしな。
0837デフォルトの名無しさん
2011/12/04(日) 18:16:28.65>DCTは統計とは関係がないし、ハフマン符号は対象データの中での出現頻度であって、
>先の様々な画像の統計的性質とは無関係だよ。
ん?関係あるよね?
なんでDCTで直行変換かますと、多くの軸の係数が0になるの?
近くのピクセルの色が似てるからだよね。
こーいうのを、人は統計的性質と呼ぶのでは?
>それは画像の統計的性質じゃなくて、人間が見たときに許容できる誤差としての統計的性質。
人の見が感じる違いと2乗誤差は違うから、そこを責めてる話もあるけど。
そこに拘らなければ、まぁ2乗誤差だろうな。
DCT後の軸の係数が小さいところを0に打ち切るだけ。
上の議論は、COS以外の基底を使って、より少ない非ゼロの軸で、2乗誤差を小さくすることが出来ないかって話じゃね?
後ろのハフマン符号化には触れてない。
0838デフォルトの名無しさん
2011/12/04(日) 18:20:06.53まず、答えろよ。
君はJPEGエンコーダぐらい書いたことあるの?ないの?どっち?
お前のレベルに合わせて教えてあげるから。
0839デフォルトの名無しさん
2011/12/04(日) 18:24:29.29>なんでDCTで直行変換かますと、多くの軸の係数が0になるの?
ならないよ。
>DCT後の軸の係数が小さいところを0に打ち切るだけ。
違うよ。
量子化テーブルをなんで使うのかわかってる?
0840デフォルトの名無しさん
2011/12/04(日) 18:29:21.230になるというか、係数が小さくなるってことな。
それで量子化テーブルの数値がきまってんだろ。馬鹿か?
0841デフォルトの名無しさん
2011/12/04(日) 18:34:19.38小さくならないよ。小さくするために量子化テーブルを使うの。
馬鹿なことを書いて恥をかく前に、JPEGエンコーダぐらい自作しろよ。
基本部分は一日あればできるし、理解も深まるから、こんなスレに書き込んでいるよりずっといいぞ。
それができないような馬鹿なら、この世界に首を突っ込まない方がいい。
0842デフォルトの名無しさん
2011/12/04(日) 18:37:49.68http://ja.wikipedia.org/wiki/%E9%9B%A2%E6%95%A3%E3%82%B3%E3%82%B5%E3%82%A4%E3%83%B3%E5%A4%89%E6%8F%9B
ほら、Wikipediaにのってるよ。
右の画像のDCTみてね!
0843デフォルトの名無しさん
2011/12/04(日) 18:44:10.50この大きさに合わせて量子化テーブルの値が決まってるわけだな。
おまえ、作ったことあんじゃねーの?理解せずにコード書き写しただけ?
0844デフォルトの名無しさん
2011/12/04(日) 18:51:27.51だから何?実際の数値見たことないの?
量子化テーブルが周波数によって数値が違う意味わかってる?
0845デフォルトの名無しさん
2011/12/04(日) 18:55:04.30>この大きさに合わせて量子化テーブルの値が決まってるわけだな。
違うよ。
実際には、高周波成分に大きな値が来ることが多々ある。
低周波の値より、高周波の値の方が無視できるから、量子化テーブルの係数が大きくなるの。
低周波は数値が小さくても無視しない方がいいから、テーブルの係数が小さい。
0846デフォルトの名無しさん
2011/12/04(日) 18:55:58.56大体、低周波数が大きくならないなら、DCTする意味ねーだろ。
ひとつおりこうさんになったな。
0847デフォルトの名無しさん
2011/12/04(日) 18:57:19.48そう。
多々ある。その頻度と、各基底が人の目に影響を与える比率で、係数が決まっている。
0848デフォルトの名無しさん
2011/12/04(日) 18:57:47.70作ったことあるも何も、仕事でやってて、それで飯食っている。
0849デフォルトの名無しさん
2011/12/04(日) 19:03:34.67>大体、低周波数が大きくならないなら、DCTする意味ねーだろ。
JPEGにおいてDCTは高周波成分と低周波成分を分ける意味しかない。
つまり、どの情報を捨てるかというフィルタ(後段の量子化テーブル)を使って、圧縮率を上げている。
(他にも色情報を落とすとかもあるが)
変換誤差があるものの、DCT自体はnear可逆変換なので、それだけでは圧縮にならない。
0850デフォルトの名無しさん
2011/12/04(日) 19:17:15.10そんなはずはない。
色んなソフトで使われてる係数は、「頻度の逆数x視覚への影響」で決まってるはずだぞ。
つまり、基底組み替えた結果、スペクトルに偏りがあるってのは重要なんだよ。
どっかに、量子化係数の決め方の解説があったが、見つからんな。
0851デフォルトの名無しさん
2011/12/04(日) 19:21:25.29つーか仕事でやってんのに、こーいうの理解してないの?
流石に周波数分離するだけってのはないだろ。
音の圧縮だって同じじゃん。
0852デフォルトの名無しさん
2011/12/04(日) 19:27:28.31>色んなソフトで使われてる係数は、「頻度の逆数x視覚への影響」で決まってるはずだぞ。
頻度じゃなくて、重要度で決まっている。
高周波成分は頻度があっても、基本的には重要ではない。
それこそ量子化テーブルは、画像単位で変えれるが、
ある画像ので低周波成分の頻度やDCT後の数値が低いからと言って、
量子化テーブルの値を大きくできるわけじゃないぞ。
そんなことをしたら悲惨な画像になる。
>つまり、基底組み替えた結果、スペクトルに偏りがあるってのは重要なんだよ。
高周波成分を捨てるために、分けることが重要なだけ。
0853デフォルトの名無しさん
2011/12/04(日) 19:28:35.66JPEGは周波数分離のためにDCTを使っているの。
0854デフォルトの名無しさん
2011/12/04(日) 19:45:01.33>>795
>コサイン基底なんか使わずに、10GByte分くらいの過剰な基底を用意しとけば、画像なんか超小さくなるべ!
だが、なんでそうなるんだ?
数値として存在しうる全パターンの基底を用意しても圧縮なんてできんぞ。
どうやるの?
DCTも変換しただけでは圧縮なんてできないのに。
0855デフォルトの名無しさん
2011/12/04(日) 19:45:03.58重要度ってどうやって決めてんの?
0856デフォルトの名無しさん
2011/12/04(日) 19:52:30.24存在しうる全パターンの基底を用意する意味がよく分からんが。
8x8の各ブロックを、常に3個の基底のみの線形和で十分表現できれば、それだけで3/64になる。
0857デフォルトの名無しさん
2011/12/04(日) 19:53:20.99だから、頻度でその重要度が決まってんだろ。
人間の目は、たまにしか出現しないものには鈍感になってんだよ。
0858デフォルトの名無しさん
2011/12/04(日) 19:54:49.69ぶっちゃけ好みの問題。
文字、アニメ絵、写真、CGで、それぞれ変えた方が良い感じになるが、
ほとんどの実装系があんまり気にしないで一般的数値を利用している。
真剣に設定しているのはフォトショップぐらい。
そもそも今時JPEGなんて糞フォーマット、議論する価値もないぞ。
0859デフォルトの名無しさん
2011/12/04(日) 20:01:18.37>8x8の各ブロックを、常に3個の基底のみの線形和で十分表現できれば、それだけで3/64になる。
馬鹿か。できるわけないだろ。
0860デフォルトの名無しさん
2011/12/04(日) 20:09:43.25だから、何故できるわけないのか、理由を答えろよ。
0861デフォルトの名無しさん
2011/12/04(日) 20:15:58.64何故できないのか、わからないから教えて欲しいのか?
それなら口のきき方を改めろよ。
0862デフォルトの名無しさん
2011/12/04(日) 20:17:16.20いいから説明してみ?
>>858
あと、これも回答になってない。
量子化係数の逆数と、スペクトル比較してみろよ。
0863デフォルトの名無しさん
2011/12/04(日) 20:32:51.64>いいから説明してみ?
尊大な馬鹿に説明してやる義理はないな。
>量子化係数の逆数と、スペクトル比較してみろよ。
そんなものは画像による。
「DCT後の数値が高い=重要」ではないの。
平坦な画像では、低周波成分に集中するのと、低周波成分が重要だから
DCT後の数値が高いところと、量子化係数が低いところが、たまたま一致する傾向があるだけ。
DCT後の数値は、大きくても、小さくても、低周波なら重要なんだよ。
数値の大きさで、重要度(量子化テーブルの値)が決まるわけじゃない。
大きいなら大きいなり、小さいなら小さいなりに、「解像度」が必要。
0864デフォルトの名無しさん
2011/12/04(日) 21:02:04.860865デフォルトの名無しさん
2011/12/04(日) 21:33:40.43両者同じこと言ってねーか?
0866デフォルトの名無しさん
2011/12/04(日) 23:47:38.83そしたら、案外、この2人も仲良くなったりしてな。
0867デフォルトの名無しさん
2011/12/05(月) 03:04:34.19既存の概念以上の何かを語っているに過ぎないような。
基底の話は、なんだかなぁ
DCTでやるかwaveletでやるかの違いよりもどうでもいい。
0868デフォルトの名無しさん
2011/12/05(月) 08:04:31.27やっぱりLinuxerの方が優秀。
0869デフォルトの名無しさん
2011/12/05(月) 14:41:58.73⌒゙i\ \ \
. ゙i \ ゙i(゚) ゙i ____\ ー‐┐ 一十一
。., ' ⌒。゙i ) ゙i \ ノ´ ノ |
o。∴。゚// ┬-、_ \ ー‐┐
(∴U// }ノ ノ \ ,> ノ´ ─┬─
|U゙/ / i | l、 く. ー‐┐ |
ー‐┐ 一十一 / u' \ヽ‐'´ !| ト、 \ ,ノ´ ─┴─
ノ´ ノ | /_____, }j ハ、 ヽ ヽ,___/ / ー‐┐ ─┬─
ー‐┐ . / ___ノ /\_,≧/ u 人. / ,ノ´ ─┴─
ノ´ ─┬─ く {上rン´ ,厶../ / ヽヽ \ ||
ー‐┐ | /  ̄ ノ{こ, /,〃 !| \ ・・ ─┬─
ノ´ ─┴─ \ ,.イ !l`T´ | / |:| / ..─┴─
ー‐┐ ─┬─ \ // l | |_| ∠.、
ノ´ ─┴─ / ヒ_ー--、_|ー、____,ノj┘ / ─┬─
ー‐┐ / \ ̄\ー`トー-< / .─┴─
ノ´ ─┬─ \ \ ヽ \ ヽ  ̄ ̄|
| | .─┴─ > \. ヽ. ヽ l |/l /| ∧ /\
・・ / ) lヽ ', l、 |/ | / V
─┬─ \ , イ、_,上ハ } 小 |/
─┴─ \ (乙≧='''"´ ,∠,__ノ/
/ 厶乙iフ/
─┬─ く `¨¨¨´
─┴─ \
0870デフォルトの名無しさん
2011/12/05(月) 15:23:01.99コード書けよ
0871デフォルトの名無しさん
2011/12/05(月) 17:59:33.84↑
コード
■ このスレッドは過去ログ倉庫に格納されています