ফাইল কম্প্রেশন কীভাবে কাজ করে?


19

সুতরাং, আমি বুঝতে পেরেছি আজ আমি ফাইল সংকোচনের জন্য সম্মতি নিই। কয়েকটি ফাইলকে এক সাথে একত্রে বান্ডিল করার ক্ষমতা এবং এগুলির যে কোনওটির চেয়ে ছোট আকারে বেরিয়ে এসেছিল, এমন একটি বিষয় যা আমি কেবল একটি সত্য হিসাবে গ্রহণ করি তবে এটি কীভাবে কার্যকর হয়?

আমার এটির একটি সীমাবদ্ধ জ্ঞান রয়েছে যার মধ্যে সমস্ত সদৃশ এন্ট্রিগুলিকে পয়েন্টারগুলির সাথে প্রতিস্থাপন, সেইভাবে সঙ্কুচিত করার সাথে কিছু করার অন্তর্ভুক্ত রয়েছে তবে এর বাইরে আমি মোটামুটি ক্লুলেস!

আমি যেমন সর্বদা নতুন জ্ঞানের জন্য উন্মুক্ত, যেমন আমি কল্পনা করি যে আমাদের বেশিরভাগ এখানে রয়েছে, আমি ভেবেছিলাম আমি জিজ্ঞাসা করব। সুতরাং, সুপার ইউজার, কম্প্রেশনটি আসলে কীভাবে কাজ করে?


1
Wikipedia নিবন্ধটি একটি ভালো শুরু, কিন্তু এটা আরও নির্দিষ্ট ব্যাখ্যা আছে চমৎকার হবে। ভাল প্রশ্ন (যদিও আমি নিশ্চিত যে আমাদের ইতিমধ্যে এ জাতীয় প্রশ্ন ছিল, তবে মনে হয় না)।
জ্ঞানপি

2
@ জ্ঞাপি: আসলে আমি প্রথমে যা করেছি তা ছিল অনুসন্ধান, কারণ আমি নিশ্চিত যে এখানে একটি ছিল। স্পষ্টতই নয়, তাই আমি এটি সংশোধন করার চেষ্টা করেছি: পি
ফোশি

2
আপনি যখন ছবি পোস্ট করবেন এবং "ওয়াট আইজিট ??" যাবেন তার জন্য আমাদের একটি "হোয়াটস" ট্যাগটি পেয়েছে; আমি "এটি কীভাবে কাজ করে" ট্যাগটির প্রয়োজনের বিষয়টি লক্ষ্য করছি, তবে এটি অনেক দীর্ঘ এবং "কীভাবে কাজ" বোবা শোনায়। "ব্যাখ্যা" এটি করতে পারে।
কোয়াকোট কোয়েসোট

@ কোয়াকোটা: আহ, ধন্যবাদ আমি একটি "plz-send-the-ব্যাখ্যা" টাইপ ট্যাগের জন্য স্বতঃপূরণটি খুঁজছিলাম, কিন্তু একটিও পাইনি।
ফোশি

2
আমি কয়েকবার "একটি" ট্যাগ তৈরি করতে কাছে এসেছি ... তবে "ব্যাখ্যা" সম্ভবত আরও ভাল। "টিউটোরিয়াল" এবং "হাওটো" এবং "শিক্ষানবিস" সমস্ত অর্ধ-প্রযোজ্য তবে বেশ মানায় না।
কোয়াকোট কোয়েসোট

উত্তর:


18

ক্ষয়হীন সংকোচনের

ক্ষতিহীন সংক্ষেপণ যেখানে কোনও ডেটা নষ্ট হয় না। প্রবেশ করা সমস্ত কিছু নিখুঁতভাবে পুনরুদ্ধার করা যেতে পারে। এটি পাঠ্য বা বাইনারি ফাইলগুলির জন্য ভাল কাজ করে যেখানে ক্ষুদ্রতম ত্রুটি লক্ষ্য করা যাবে।

ফাইল সংক্ষেপণ ফাইলটি গ্রহণ করে এবং নিদর্শনগুলির জন্য স্ক্যান করে, এবং সেই নিদর্শনগুলিকে অন্য কোনও জায়গায় অনুবাদ করে যা কম জায়গা নেয়।

উদাহরণস্বরূপ "AAAAAAAAA" "8A" তে রূপান্তরিত হতে পারে।

মঞ্জুরি দেওয়া হয়েছে যে এটি ঠিক কীভাবে কাজ করে না কারণ তখন সমস্যা আছে যদি "8 এ" সরলরেখায় থাকত। আপনি ফাইলটি সঙ্কুচিত করবেন এবং এটি ভুল হবে। শুরু করার জন্য একটি ভাল জায়গা হ'ল হয় উইকিপিডিয়া বা এলজেডাব্লু ডেটা কম্প্রেশন অ্যালগরিদম

নীচে এই অনুলিপিটির জন্য কিছু সোজা পেজযুক্ত কোড রয়েছে:

STRING = get input character
WHILE there are still input characters DO
    CHARACTER = get input character
    IF STRING+CHARACTER is in the string table then
        STRING = STRING+character
    ELSE
        output the code for STRING
        add STRING+CHARACTER to the string table
        STRING = CHARACTER
    END of IF
END of WHILE
output the code for STRING

সমস্ত সংক্ষেপণ একটি অনুসন্ধান অভিধান ব্যবহার করে যা ফাইলটি সংকুচিত এবং সংক্ষেপিত করতে ব্যবহৃত হয়। ডিকশনারিটি যত বড়, আপনি এটি কমপ্রেস করতে পারবেন, যদিও আপনি ডিটারিনিশিং রিটার্নসের আইনটিতে চলে যান ।

এটাও লক্ষণীয় যে কমপিশন সবসময় একটি ছোট ফাইল দেয় না। এমন পরিস্থিতি রয়েছে (ছোট ফাইলগুলির সাথে, বা র্যান্ডম ডেটা সংকোচন করার সময় ) যে আপনি সংক্ষেপণের পরে কোনও ছোট ফাইল পাবেন না । এলোমেলো তথ্য সংকোচনের ক্ষমতা সম্পর্কিত কিছু মজাদার চ্যালেঞ্জ ছিল

"লসী" সংক্ষেপণ

উপরেরটি বেশিরভাগ ক্ষেত্রে নিখুঁত সংকোচনের সাথে সম্পর্কিত । ভিডিও / অডিও অ্যাপ্লিকেশন যেমন এমপি 3, জেপিজি, এবং এইচ .264 হিসাবে ব্যবহৃত অন্যান্য ধরণের সংকোচনের উদাহরণ হ'ল ক্ষয়িষ্ণু সংক্ষেপণ

লসী সংক্ষেপণটি ডেটা ফেলে রেখে কাজ করে যা সম্ভবত লক্ষ্য করা যায়। অডিওতে এটি অন্যান্য বিভিন্ন জিনিসের সাথে প্রায় 30,000 হার্জ এবং 100 হার্জ-এর নিচে শোনাচ্ছে। ছবিতে (স্থিতিশীল) এটি বিভিন্ন জিনিস সরিয়ে দেয় এবং পিক্সেলগুলিকে একসাথে একত্র করে, সাথে সাথে ডেটা ছাড়ার।

লসী কম্প্রেশন রূপান্তর কোডিংয়ের একটি ফর্ম । সামগ্রিক আকার হ্রাস করতে এটি ডেটা গড় বের করে। উদাহরণস্বরূপ কোনও ছবিতে 10 পিক্সেলের একটি ব্লক, সমস্ত সামান্য বিভিন্ন বর্ণ এক সাথে এক রঙে মিশে যায় এবং এইভাবে সংকুচিত হয়।

ভিডিও সংক্ষেপে প্রায়শই নির্দেশগুলি কেবলমাত্র পুনরায় আঁকা পিক্সেলগুলিতে স্থাপন করা হবে যা শেষ ফ্রেম বা কীফ্রেমের পরে পরিবর্তিত হয়েছে ।


নোট করুন যে এটি কেবলমাত্র ক্ষয়হীন সংকোচনের জন্য ব্যাখ্যা, আপনি ঠিক প্রাথমিক ডেটা পুনরুদ্ধার করতে পারেন এমন ধরণের জন্য (সম্ভবত আর্কাইভ প্রোগ্রামগুলির দ্বারা ব্যবহৃত হয়)। অন্যান্য ধরণের সংকোচনের মধ্যে রয়েছে যা আপনি ছোট আকারের জন্য গুণমান হারাচ্ছেন, উদাহরণস্বরূপ জেপিজি, এমপিথ্রি ইত্যাদিতে ব্যবহৃত
Gnoupi

জোশের প্রথম উদাহরণটি রান-লেংথ এনকোডিং নামে পরিচিত একটি বাস্তব সংক্ষেপণের পদ্ধতির একটি ফর্ম এবং "8 এ" "181A" তে সংকুচিত হবে। স্পষ্টতই তাঁর শেষ অনুচ্ছেদটি এখানে প্রযোজ্য; আরএলই অনেক অনুলিপি সহ ডেটাতে সেরা কাজ করে।
ডোর হাই আর্চ

3
আমি ক্ষতিহীন / ক্ষতির শিরোনাম যুক্ত করেছি এবং আরও কিছুটা গোল করেছি। এটি লক্ষ করা ভাল যে এটিকে আরও বোঝার সর্বোত্তম উপায়টি কেবল উইকিপিডিয়া নিবন্ধটি পড়া।
জোশ কে

5

সংক্ষেপে ডেটাগুলিতে নিদর্শনগুলি সন্ধান করে, তারপরে এই নিদর্শনগুলিকে একটি বিশেষ ছোট নিদর্শন দিয়ে প্রতিস্থাপন করে works ডিকম্প্রেশন হ'ল বিপরীত: বিশেষ নিদর্শনগুলি সন্ধান করুন এবং তারা যে বৃহত নিদর্শনগুলি উপস্থাপন করেন তাদের সাথে প্রতিস্থাপন করুন। কোন প্যাটার্নগুলি সম্ভাব্য তা জানা গুরুত্বপূর্ণ; উদাহরণস্বরূপ, পাঠ্যগুলিতে পাওয়া নিদর্শনগুলি চিত্রগুলির মধ্যে পাওয়া তুলনায় বেশ আলাদা হতে পারে। কিছু সংক্ষেপণের কৌশল ক্ষয়ক্ষতিযুক্ত; তারা গ্যারান্টি দেয় না যে প্রসারণটি ঠিক ইনপুটটি পুনরুদ্ধার করবে। ক্ষতি যথেষ্ট পরিমাণে কম থাকলে সঙ্গীত এবং চিত্রগুলির মতো অ্যানালগ ডেটার জন্য এটি সাধারণত সূক্ষ্ম। তবে পাঠ্যের মতো ডেটা অবশ্যই ক্ষতিহীন কৌশল দ্বারা সংকুচিত করা উচিত।

এটি উপলব্ধি করা জরুরী যে কোনও ক্ষতি ছাড়াই, এককভাবে র্যান্ডম ডেটা সংকুচিত করা অসম্ভব। বাইনারি ডেটা এন বিটস সহ একটি ফাইল বিবেচনা করুন। সম্ভাব্য ফাইল রয়েছে 2। আপনি যদি এই ফাইলগুলির কোনও একটিকে একটি বিট দিয়ে সংকুচিত করে থাকেন, তবে সংকুচিত ফাইলটি আকারে এন -1 বিট হয়, কেবলমাত্র 2 ^ (এন -1) সম্ভাব্য সংক্ষেপিত উপস্থাপনা থাকে। অন্য কথায়, প্রতিটি সম্ভাব্য সংকোচিত ফাইলকে একাধিক সম্ভাব্য কমপ্রেসড ফাইল উপস্থাপন করতে হবে। একটি অনন্য সংকীর্ণ প্রতিনিধিত্ব ছাড়াই, ডেকম্প্রেশন অ্যালগরিদম লসলেস ডিকম্প্রেশনকে গ্যারান্টি দিতে পারে না।


3
একটি ফাইল সঙ্কুচিত (বিশেষণ) হতে পারে তবে সংকুচিত করা যাবে না (ক্রিয়াপদ)। পরিবর্তে এটি সঙ্কুচিত হয়
কোয়াকোট কোয়েসোট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.