圧縮・復元 相談室

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
NGNG
アルゴリズムは別スレで
NGNG
たとえばランレングス法とかのように("aaabbc" => "a3b2")
日本語を含む文字列(char型の配列)を圧縮して、
出力がバイナリでない圧縮方法はないですか?
ランレングス法は通常のテキストだとあんまり意味がないもんで。
NGNG
>>251
そんな特異な圧縮方法はありそうにない。
ってか、ほとんど仕様が決まってるじゃん。自前で用意しる!
NGNG
>>251
君は>>242だな?

>出力がバイナリでない
意味が良く分からん。
もう少し圧縮について勉強しなさいな。
NGNG
失礼いたします。
LHAやzlibでの、LZ系の高速化手法について詳しく述べられている
サイトってございませんでしょうか?
NGNG
>>254
サイトは知らないが、論文はいくつかある。
NGNG
>>254
ランペル・ジブ系一般に対する高速化の手法ではなくて、
LHAやzlibが採用してる手法について知りたいってこと?

後者なら、LHAについては1970〜80年台の古い雑誌に解説記事が載ってたな。
zlibはソース見るのが早いかも。いずれにしても、奥村先生のとこの記述がとっかかりになるはず。
ttp://oku.edu.mie-u.ac.jp/~okumura/map.html

前者だと、論文とか特許文書あたりの範疇になるのかな。これはさすがによくわかんね。
NGNG
教えて頂いてどうもありがとうございます。

>>256
後者の方です。
NGNG
gzip.dll用のCのヘッダーファイルが存在するのかどうか、
どなたかご存知でしたら教えてください。
当方VC6.0で圧縮モジュールを作成したいと考えています。
259デフォルトの名無しさん
垢版 |
NGNG
 
NGNG
>>258
http://www.gzip.org/
NGNG
人生に密着した、圧縮と解凍。
ttp://www.newforeskin.biz/CI/CIchart.htm
NGNG
LZとかその他の理論を基本的な手法を解説した本ってあまりないよね
なので、見つけたら即買ってしまう・・・
NGNG
「LHAとZIP」つー、マンマの本はどうなのかな。
オレは読んだこと無いけど(苦笑)。
Cが読めるなら、理解できるんじゃないかな。
オレはCを読めないので本当のトコは知らないけど(苦笑)。

アルゴリズムだけなら、上の本の作者の若い片割れの
ウェブサイトに、基本的にトコがカンタンに載ってるよ。
オレはそこ読んでLZSS+ハフマンのアーカイバを作った。
NGNG
>>262
理論を解説した文書が欲しければ論文を読むか、情報理論の教科書を探せ
手法を解説した文書ともども、amazonで買える

そもそもの大問題として、LZそのものの理論解析が実はあまり進んでいないという
確率推定問題に置き換えての証明やらは腐るほどあるが、派生手法に適用が困難
NGNG
gzipの解凍と圧縮の仕方を知りたい。
NGNG
>>265
ソースプログラムを読もう
アルゴリズムを知りたければRFCを読めばおk
NGNG
LZMAをマイナーOS環境にポーティングしようと思ったら、LZMA SDKの
コードそのままでメークできてしまった。色々いじって楽しもうと思ったのになあ・・・。
268デフォルトの名無しさん
垢版 |
NGNG
zip32.dllをダウンロードする場所を教えてください
NGNG
>>268
googleで検索することをオススメします
270デフォルトの名無しさん
垢版 |
NGNG
いいから直アド教えれこのくずが
NGNG
  _, ._
( ゚ Д゚)
272デフォルトの名無しさん
垢版 |
NGNG
ごめん・・・
もうゲットしちゃった(*´д`*)
NGNG
(゚д゚)
NGNG
>>270
氏ね
275デフォルトの名無しさん
垢版 |
NGNG
lzw圧縮ってもう使ってもいいんだよね?
あとでまた特許云々…とかなったりしないよね?
NGNG
> lzw圧縮ってもう使ってもいいんだよね?
Unisysが持ってた特許は失効した。

> あとでまた特許云々…とかなったりしないよね?
可能性はある。
実際に Unisys が関連特許で gif からライセンス料を徴収を続けるかも、って記事もあったし。
277275
垢版 |
NGNG
>実際に Unisys が関連特許で gif からライセンス料を徴収を続けるかも、って記事もあったし。
マジですか('A`)
携帯アプリのデータ圧縮に使おうと思ってたんだけど、やめといたほうがいいのかな…。
NGNG
>>277
>>276 は脅しただけだと思うが。
まぁ、油断はしない方がいいやね。

lzwってsuffix treeが必要になるから携帯でやるとメモリきつくない?
NGNG
各ノードの前後のインデックスを保持するだけだからそんなにメモリ使わないと思う。
NGNG
前後のインデックスってわかんないや。
親ノードのインデックスだったらわかるけど。
最近勉強してなかったからなぁ。
NGNG
ああ、親子のインデックスって言った方がよかったか。
lzwなら、親ノードのインデックスと1字のデータ(ある意味、子ノードのインデックス)ってことだよ。
NGNG
>>277
>>276 が言ってるのと同じかはしらんけど、こんなん見つけた。

http://pcweb.mycom.co.jp/news/2004/06/21/001.html
> 現在、米UnisysはLZWの技術に関連する2件の特許を出願中であり、
> 近い将来において特許成立が見込まれると発表している。
> 画像フォーマットとの関係は不明だが、その内容次第では
> 今回解決に至ったGIF問題の再発も懸念される。
283275
垢版 |
NGNG
まあ特許切れてる間に発表すれば後で公開停止求められることはないと思うけど、
作ってる間に関連特許取られたら怖いなー。後々使いまわす予定のコードだし。
短いコードで圧縮率高いから使いたかったんだけど…lzw以外でそういう圧縮方法ってないよね?
NGNG
lzss もハッシュテーブルと連結リストだけでできるっしょ。
こっちも特許ヤバそうだけど。
285281
垢版 |
NGNG
ごめん、今更だが子のインデックスって言い方はまずかった。
要は、辞書X番の情報は「辞書Y番の子である」と「その後ろにつく1文字」ということなんで、
ノードの持つデータと親のインデックスだけでいいんだな。
286デフォルトの名無しさん
垢版 |
NGNG
cabinet SDK(cabinet.dll)のAPIが日本語で説明されてるサイトってありませんか?
NGNG
大阪(西梅田)、新宿(JR駅前)のそれぞれ一等地に
拠点を構え、業績急上昇中!未経験者大募集中!の
ソフトウェア開発会社
グリーンシステムを応援するHPです。
http://www.geocities.jp/grs_hp/

応援するスレはこちら!
http://school4.2ch.net/test/read.cgi/job/1077432387/

最高の会社にするため、みんな頑張ってます!
NGNG
高速ブラウザ「Opera」、SlipStreamの圧縮技術でさらに加速
http://pcweb.mycom.co.jp/news/2004/11/06/100.html

の記事で、
「SlipStreamが開発したWebやEメールのアクセラレーション技術である。同社独自のデータ圧縮アルゴリズム」
とあるけど、
またまた、何かのパクリなのか? 

こういう紛いもんみたいな新技術の話って、よくもまあホイホイ出てくるよなぁ。
289デフォルトの名無しさん
垢版 |
NGNG
教えてください。私目のバカ脳では、限界です。
JavaのZGIPOutputStreamクラスでgzip形式で圧縮が可能なのですが、

同じファイルでも、プログラムで圧縮プログラムを実行するたびに、
出力された圧縮ファイルが異なります。サイズも中身もです。
解凍すれば、同じデータであるので、別に良いのですが、
会社で資産管理作業を行う際に面倒です。
そもそも、gzipや他の名のある圧縮アルゴリズムの
仕様なのでしょうか?
NGNG
>>289
適当な圧縮ソフトで実験してみれば?
NGNG
拡張子fcdってどうやって復元するの?
サイズ400メガ
NGNG
>>291
とりあえず吊っとく?
NGNG
FCD・・わからん
吊っとく・・わからん
NGNG
割れだろ?放置推奨
NGNG
圧縮ソフトを作りたくて圧縮技術に関する本をamazonで検索しています。

http://www.amazon.co.jp/exec/obidos/ASIN/4797325526/ref=pd_bxgy_img_2/249-1522108-5041925
圧縮アルゴリズム―符号化の原理とC言語による実装 C magazine
↑は購入を決めたのですが、他にお勧めの本はありますか?

できればプログラムのソースの解説については少なくて
アルゴリズムの解説に重みを置いている本を読みたいのです。

上記の本は知人から見せてもらって
自分のそばに置こうと考えたので購入することにしました。
NGNG
ttp://www.amazon.co.jp/exec/obidos/ASIN/4798005606/ref=pd_sim_dp_2/249-1522108-5041925
図解入門 よくわかる最新データ圧縮技術の基本と仕組み
―情報圧縮技術とアルゴリズムの基礎講座
How‐nual Visual Guide Book

こちらも候補に入れております。
297デフォルトの名無しさん
垢版 |
NGNG
保守
NGNG
あとはこれ。
「LHAとZIP―圧縮アルゴリズム×プログラミング入門」
http://www.amazon.co.jp/exec/obidos/ASIN/4797324287/
NGNG
>>298
その本は 1/3 が LHA の作者の一人の奥村氏による昔話とアルゴリズム解説、
2/3 が DeepFreezer作者による LHA の独自実装のソースと解説。
ついでに ZIP も実装できちゃいましたって感じの本だよ。
アルゴリズムの解説が読みたいっていう >>295 にオススメできるような本じゃない。

仕様を網羅してるか、という点で見ても LHA も ZIP も中途半端だし。
NGNG
そうだねぇ。私も買ったけど、仕様がどうこうって本ではないですね。
圧縮アルゴリズムのさわりと、プログラミングの入門って感じの本でした。
ていうか、サブタイトルがそのまんまなんで、タイトル通りの本ってことだけど。
301295
垢版 |
NGNG
図解入門 よくわかる最新データ圧縮技術の基本と仕組み
―情報圧縮技術とアルゴリズムの基礎講座
How‐nual Visual Guide Book

圧縮アルゴリズム―符号化の原理とC言語による実装 C magazine

上二つの本を購入することにしました。
みなさんありがとうございました。
NGNG
>>296 >>301
よくわかる〜 はさわりしか書いてないので、物足りなくなったら原論文を当たるとよいでしょう
ただ、オリジナルの論文では正確なところがわからないこともあるので、
解説的な論文を読むのもいいでしょう
NGNG
突っ込みたい。「さわり」を突っ込みたいー。
NGNG
昔買った、文書データ圧縮アルゴリズム入門 というのは様々な圧縮方法が書いてあって
よかったけど、今は絶版らしい。
NGNG
>>304
ttp://www.cqpub.co.jp/hanbai/books/36/36721.htm
漏れが圧縮にハマるきっかけになった名著。絶版でなければ、>>301で不足してる分はこれが補ってくれると思うんだが…
復刊.comでリクエストするか、それとも改訂版をリクエストするか?
NGNG
改訂版のほうが良いんじゃないかな
307デフォルトの名無しさん
垢版 |
NGNG
掲示板を作りました
http://scs.dip.jp
情報通信に関する学術的および技術的な議論の場を
提供することを目的としています。
勉強するためのテキストの紹介、技術的な質問、
産業界の動向、議論などご自由にお使いください。
NGNG
ランタイムライブラリ含まない大きさが2kバイトぐらいの
小さくて展開の速い圧縮ありませんか?
圧縮する対象は主にexeとかの実行イメージです。

今はひそかにスライド辞書(LZ77)を使ってますが
アルゴリズム同じだと特許に触れるんでしょうか。
せっかく苦労して作ったのにやだなあ。
NGNG
>>308
子供は早く寝ろ
NGNG
LZ77なら全く問題なし
NGNG
>>310
富士通はLZ77+ハッシュ使うとダメって言ってるし、
LHA作者の奥村教授はLZ77+ツリー使うとダメって言ってるが。
NGNG
LZ77+何か:×の可能性が高い
LZ77のみ :D
って事
NGNG
文字化けしてたらスマソ
Dは○
314デフォルトの名無しさん
垢版 |
NGNG
LZ77 + 普通のハフマンは×ですか?(LHAではないです)
ハフマンって圧縮以上に見た目のランダム性上がるから
使いでがあるんですが。

というかLZ77のみは可ですか。
とりあえずLZ77だけでいきます。


こういう思いつきそうな事を特許で縛るのって卑怯ですよね。
そういえば、バイオハザードの視点固定は特許になったのかな。
あれも酷いですよね。
NGNG
>>314
> というかLZ77のみは可ですか。
LZ77のみっつーか LZ77 + 単純検索だけでhashもツリーも使ってないなら、たぶん可。
LZ77 + 自分でゼロから考えた高速化をしてる場合は特許の調査をしてみんとわからん。

hashとかツリーとか言われて理解できないようなら、たぶん不可。
一般にwebや本に書かれてるLZ77のプログラムは、全てhashかツリーを使ってるから。
NGNG
>>314
誰でも思いつきそうで、特定の誰かが思いつくものは多々ありますが、結局早い者勝ちです。
それに、もう20年近く前に「開発され尽くした」といわれた手法に、
いまさらどうこう言ってもしょうがないかと。
LZW同様、ぞくぞく特許が切れつつあるので、ちゃんと調べるなら、使うことができますよ。

あと、LZ77の大多数の特許は、圧縮時の手法(ハッシュも木も)なので、
LZ77オリジナルと同じ圧縮後データをもち、展開するだけなら、特許は全く関係ないわけです。
NGNG
> ちゃんと調べるなら、使うことができますよ。
ちゃんと調べるならって、>>314 には使えないって遠まわしに言ってるだけのような。
NGNG
>>317
特許専門の弁護士やら技術者やらを用意しても回避困難
一般人ならなおさら
NGNG
・ソース非公開
・リバースエンジニアリング、解析を禁止
しておけば大丈夫。
特許の有効期限分経過してからソースは公開すればいい。
後で特許とられても、先に実装が存在する場合は特許が成立しないので、
この場合も安全となる。
NGNG
> 特許の有効期限分経過してからソースは公開すればいい。
特許が無効になるまでの期間分の特許料払わなきゃいかんと思うが。

> 後で特許とられても、先に実装が存在する場合は特許が成立しないので、
実装が存在しただけで公知と言えるのかは疑問。
NGNG
>>320
>> 特許の有効期限分経過してからソースは公開すればいい。
>特許が無効になるまでの期間分の特許料払わなきゃいかんと思うが。

特許の存在を知らなかったといえば回避できる。

>実装が存在しただけで公知と言えるのかは疑問。

公知でなくとも存在を証明できれば問題ない。
そのためにはネット上で配布などをあらかじめ利用する。
NGNG
> 特許の存在を知らなかったといえば回避できる。
著作権じゃないんだから……
それが通るなら特許なんて法制度はあっというまに崩壊するな。

> 公知でなくとも存在を証明できれば問題ない。
改竄が比較的容易なネットでの配布が法的にどーゆー位置づけになるか、って問題と
実装だけで存在を証明できるかって問題が……
NGNG
>>319 >>321
特許は、
知らなかったでは回避できないし、
その期間分を遡って賠償も請求されるし、
(著作権と異なり)偶然一致した場合でも侵害したことになる。

ネット上での公開は、現在は灰色。
ソースコードを登録機関に提出しておくべし。


・・・はず、有識者もとむ(特許出しているくせに、未熟ですまぬ)・・・
324デフォルトの名無しさん
垢版 |
NGNG
じゃあ組み込むのは展開部分のみなんで関係ないですね
NGNG
>>323
回避できる。例えばGIF関連では、期限が切れた今現在、過去に上って請求されることは無い。
ポイントは、経過したことと、相手に請求されていないこと。
期限が切れてしまえば、知らなかったで済む。大抵は時効だ。

ソースコードの提出は、逆に自分を危険に晒す。
自分が権利を主張しないなら、バイナリが存在すれば、それで十分。
バイナリ自体が、アセンブリ言語のソースになる。
NGNG
>>322
お前は馬鹿か。特許制度が、どういう理念で作られたかわかっていないな。
著作権などの法制度とは全く異なる。もともと技術が隠されるのを防ぐためだ。
NGNG
>>325
無根拠で知らなかったで済むとか言われても……

それに Unisys が現実に特許料を請求するかは別にして、
今現在でも Unisys は2004年6月(だっけ?)までの特許料を請求する権利を持ち続けてるだろ。

あとバイナリ自体がアセンブリ言語のソースって考え方なら
バイナリもソースコードと同程度に危険なはずだが。
NGNG
>>324
奥村教授を信じるなら、LZ77の展開部分だけなら大丈夫だと思われ?
ハフマンの展開部分も大丈夫か、ハフマンの展開部分とLZ77の展開部分くっつけて大丈夫かは知らんが。
329デフォルトの名無しさん
垢版 |
NGNG
>>326
特許の目的は人類の知的財産の共有が目的だよ
みんなで一歩一歩進みましょう。
って感じの。

特許対象となるようなすばらしいアイデアはみんなのものです。
でも、発明人にもなにかおいしいことがないといけないので
20年間は発明を特許で保護されるわけです。

あんまり恥ずかしいこといわないでね。
330デフォルトの名無しさん
垢版 |
NGNG
no patent!!
no patent!!
331デフォルトの名無しさん
垢版 |
NGNG
ん?LZWはもう使って大丈夫なんですか?
NGNG
解禁です。
あの子のへあーも
NGNG
>>331
>>275-276,>>281
NGNG
× >>281
>>282
NGNG
rarて何使ってるの?
最近の圧縮アルゴリズムはさっぱりわからん
336デフォルトの名無しさん
垢版 |
05/01/25 16:00:11
自己解凍書庫ってのは『解凍Exe』+『圧縮データ』って形になってると思うんですが
『解凍Exe』はどのようにして『圧縮データ』の位置を取得してるんでしょう?
05/01/25 16:46:35
自分のサイズがわかってればいいんじゃない?
05/01/25 19:10:43
ここに詳しい人がいる
http://pc5.2ch.net/test/read.cgi/tech/1039513920/
05/01/25 20:59:47
>>335
とりあえず

 r a r は 最 近 で き た 圧 縮 形 式 で は な い w
340デフォルトの名無しさん
垢版 |
05/01/25 21:03:48
>自分のサイズがわかってればいいんじゃない?
ふむ...
『解凍Exe』内部にハードコードで書込んでおく。ってのも有りか...しかしなんかイヤな感じが

統合アーカイバとかの自己解凍書庫てどーゆー作りになってんだろ?
05/01/25 21:10:29
>>340
良くわからんけどID3みたいにファイル末尾に前のブロックの末尾位置だの
最終ブロックないのデータの先頭位置だののテーブル持ってるんじゃない?
05/01/25 21:49:39
>>341
おいおい憶測で物言うのもいい加減にしろよ。
ストリームでもなければ末尾にヘッダを置く意味がない。
自己解凍書庫の作成はあらかじめ用意した解凍ロジック付きexeの
PEヘッダに適当なデータセクションを追加修正すれば終わり。
解凍ロジックはデータセクションで定めた決めうちベースアドレスから
データを読み取るだけでOK。
PEの仕組みとローダの知識が多少あればできる。
343sage
垢版 |
05/01/28 01:13:21
ソースコードが移植可能なライセンス携帯で、3kbぐらいのオブジェクトサイズの
圧縮ライブラリ知りませんか?ちょっとSymbianに乗せるアプリに実装したい
と考えています。
05/01/28 01:17:54
>>343
Huffman自作しなされ。以上
05/01/28 03:00:24
344の意訳

知りません。でも知らないって言うの恥ずかしいから煽ります。
05/01/28 10:44:41
MPGかWAVからAFSファイルを作りたいんだけど、ツールないですか?
05/01/28 11:11:10
>>346
板違い

ソフトウェア
http://pc5.2ch.net/software/
05/01/29 21:18:14
Lhaplusの作者のWebページどこへいっちゃたんだろ?
Lhaplusってあれだね、ファイル数が多いといつまで待っても
圧縮が始まらんねw
05/01/29 23:00:14
> Lhaplusの作者のWebページどこへいっちゃたんだろ?
ttp://park14.wakwak.com/~schezo/
350348
垢版 |
05/01/30 17:00:43
>>349
サンクス。
lhaplusをver1.50β11にしたらサクッとスタートしてくれました。
05/02/03 18:05:41
LZ77の圧縮にハッシュも木も使ったらまずいってどうすりゃいいんだ?
LZ77を少し改造してLZ77じゃありませんよ〜とかいったらOKなんだろうか。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況