হার্ডওয়্যার টেক্সচার সংক্ষেপণ কীভাবে কাজ করে?


13

এটি পিক্সেল অ্যারের তুলনায় ডেটা সংকুচিত করে তা সুস্পষ্ট।

তবে কী এটিকে সাধারণ সংক্ষেপণ থেকে আলাদা করে তোলে (যেমন পিএনজি, জেপিইগ)?


"সাধারণ সংক্ষেপণ" কী - জেপিইজি এবং পিএনজি-র মতো জিনিস? আপনি কি ডিএক্সটি এবং এএসটিসির মতো হার্ডওয়্যার-সমর্থিত ফর্ম্যাটগুলির মধ্যে পার্থক্য সম্পর্কে জিজ্ঞাসা করছেন?
নাথান রিড

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

যেমনটি সাইমনএফ লিখেছেন। এটি একটি অত্যন্ত বিস্তৃত প্রশ্ন এবং উত্তরটি আপনি কোন ধরণের আগ্রহী তার উপর নির্ভর করে eg
imallett

উত্তর:


25

সাইমনের মন্তব্যে যেমন প্রমাণিত হয়েছে, হার্ডওয়্যার টেক্সচার সংক্ষেপণ এবং অন্যান্য সাধারণভাবে ব্যবহৃত চিত্রের সংকোচনের মধ্যে একটি প্রধান পার্থক্য হ'ল প্রাক্তনটি এন্ট্রপি কোডিং ব্যবহার করে না। এনট্রপি কোডিং হ'ল সংক্ষিপ্ত বিট-স্ট্রিংগুলি উত্স ডেটাতে সাধারণত ঘটে যাওয়া বা পুনরাবৃত্তি নিদর্শনগুলির প্রতিনিধিত্ব করতে ব্যবহার করা হয় ZIP যেমন জিপ, কনফিগার ফর্ম্যাট যেমন জিআইএফ, জেপিইজি, এবং পিএনজি, এবং অনেকগুলি সাধারণ অডিওতেও দেখা যায় এবং ভিডিও ফর্ম্যাট।

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

সুতরাং, এনট্রপি কোডিংয়ের পরিবর্তে হার্ডওয়্যার সংক্ষেপণ স্থির-অনুপাত, ব্লক-ভিত্তিক স্কিমগুলি ব্যবহার করে। উদাহরণস্বরূপ, ডিএক্সটি / বিসিএন সংকোচনে , টেক্সচারটি 4 × 4 পিক্সেল ব্লকগুলিতে টুকরো টুকরো করা হয়েছে, যার প্রতিটিই 64 বা 128 বিটের মধ্যে এনকোড করা হয়েছে (কোন ফর্ম্যাটটি বেছে নেওয়া হয়েছে তার উপর নির্ভর করে); মধ্যে ASTC , বিভিন্ন ফরম্যাটের 12 × 12 পর্যন্ত 4 × 4 থেকে ব্লকের মাপ ব্যবহার করুন, এবং সমস্ত ব্লক 128 বিট এনকোড করা হয়। বিটগুলি কীভাবে চিত্রের ডেটা উপস্থাপন করে সেগুলির বিবরণ ফর্ম্যাটগুলির মধ্যে পরিবর্তিত হয় (এবং এমনকি একই চিত্রের মধ্যে একটি ব্লক থেকে অন্য ব্লকের চেয়ে আলাদাও হতে পারে), তবে অনুপাতটি স্থির হওয়ার কারণে, হার্ডওয়্যারটির পক্ষে মেমোরিতে কোথায় ব্লকটি পাওয়া যায় তা গণনা করা সহজ hardware প্রদত্ত ( x , y ) পিক্সেলযুক্ত এবং প্রতিটি ব্লক স্বয়ংসম্পূর্ণ, তাই এটি অন্য যে কোনও ব্লকের থেকে স্বাধীনভাবে ডিকোড করা যায়।

Another consideration in hardware texture compression is that the decoding should be efficiently implementable in hardware. This means that heavy math operations and complex dataflow are strongly disfavored. The BCn formats, for instance, can be decoded by doing a handful of 8-bit integer math operations per block to populate a small lookup table, then just looking up the appropriate table entry per pixel. This requires very little area on-chip, which is important because you probably want to decode several blocks in parallel, and thus need several copies of the decode hardware.

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


চমৎকার উত্তর। এছাড়াও আপনি যোগ করতে পারেন যে এখানে কিছু কাগজপত্র উল্লেখ করা হয়েছে যে কিছু পরিস্থিতিতে আপনি নিজেই সংক্ষেপণ করতে পারেন এবং ডেডিকেটেড হার্ডওয়্যারের উপর নির্ভর করে ক্লায়েন্ট কোড দিয়ে পিক্সেল শেডারে ডিকোড করতে পারেন। আমি জানি না যে এটির কোনও বাস্তব বিশ্ব ব্যবহার নেই, এটি কেবল গবেষণার জন্য মূল্যবান হতে পারে তবে এটি বিদ্যমান।
v.oddou

1
@ নাথান-রিড পুনরায় রূপান্তর-ভিত্তিক সংক্ষেপণ, মাইক্রোসফ্টসের টালিসম্যান প্রকল্পটি টিআরসি নামে একটি সংক্ষেপণ স্কিম ব্যবহার করেছিল যা (মোডগুলির মধ্যে একটি হিসাবে) ডিসিটি ব্যবহার করেছিল তবে জেপিজির বিপরীতে, ব্লকগুলিতে এলোমেলো প্রবেশের অনুমতি দিয়েছে (আমার মনে হয় সেখানে অবশ্যই কোনও টেবিল রয়েছে ঠিকানাগুলি)। এটি তখন বিভিন্ন ব্লকের জন্য পরিবর্তনশীল দৈর্ঘ্যের ডেটা মঞ্জুরি দেয় তবে এইচ ডাব্লুয়ের পক্ষে দিকটি অপ্রীতিকর - কারণ ভি কিউ টিসি ফ্যাশনের বাইরে চলে যায়। এফডাব্লুআইডাব্লু আমি প্রায় এক ডজন টিসি আইডিয়া বি 4 পিভিআরটিসি নিয়ে পরীক্ষা করেছি; কিছু স্থির হার ছিল, রূপান্তর ভিত্তিক, কিন্তু "অনুপস্থিত" কোফরা এখনও বিট ব্যবহার করে। বিটিসির মতো স্থির কোফের অবস্থানগুলি "ফ্রি" তথ্য বোঝায় lies
সাইমন এফ

2
@ নাথান-রিড। যা আমি দেখেছি, সমস্ত এইচডাব্লু ডিকোডারগুলি খাঁটি লজিক পাথ (বিট ডিকোড, কিছু লুকোচুরি, ডেটা পাথের কিছু গণিত) দিয়ে প্রয়োগ করা যেতে পারে তবে কোনও লুপ / ​​নিবন্ধের প্রয়োজন নেই। আপনি এমন কোনও পরিকল্পনা সম্পর্কে অবগত আছেন যা টেক্সচার লুপকে চক্র বিন্যাস যুক্ত করে? (আমি মজাদার জন্য একটি ভিএইচডিএল ইটিসি 1 1 ডিকোডার প্রয়োগ করেছি) আমি এই ছাপের মধ্যে ছিলাম যে প্রতিটি টেক্সচার ইউনিট (টিইউ) এর এমোডবেড ছিল।
রোমেন পাইকোইস

31

"কীভাবে (হার্ডওয়্যার) টেক্সচার সংক্ষেপণ কাজ করে" একটি বড় বিষয়। আশা করি নাথনের উত্তরের বিষয়বস্তুটি সদৃশ না করে আমি কিছু অন্তর্দৃষ্টি সরবরাহ করতে পারি ।

আবশ্যকতা

টেক্সচার সংক্ষেপণ সাধারণত 'স্ট্যান্ডার্ড' চিত্রের সংক্ষেপণ কৌশলগুলি থেকে পৃথক হয় যেমন চারটি প্রধান উপায়ে জেপিজি / পিএনজি, সংক্ষেপিত টেক্সচার থেকে বিয়ার এট আল রেন্ডারিংয়ে বর্ণিত :

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

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

  3. কম্প্রেশন রেট এবং ভিজ্যুয়াল কোয়ালিটি : বিয়ারস এট যুক্তি (দৃinc়ভাবে) যে সংকোচনের হারকে উন্নত করতে সংকুচিত ফলাফলের মধ্যে কিছু গুণ হারানো একটি উপযুক্ত বাণিজ্য is থ্রিডি রেন্ডারিং-এ, ডেটাগুলি সম্ভবত ম্যানিপুলেটেড হতে চলেছে (যেমন ফিল্টারযুক্ত এবং ছায়াময় ইত্যাদি) এবং তাই মানের কিছু ক্ষতি হ'ল মাস্ক করা যেতে পারে।

  4. অসমমিতিক এনকোডিং / ডিকোডিং : সম্ভবত কিছুটা বিতর্কিত হলেও তারা যুক্তি দেখিয়েছেন যে এনকোডিং প্রক্রিয়াটি ডিকোডিংয়ের চেয়ে অনেক ধীর গতিতে গ্রহণযোগ্য is এইচডব্লিউ পূরণের হারে ডিকোডিং হওয়া দরকার তা দেওয়া, এটি সাধারণত গ্রহণযোগ্য। (আমি স্বীকার করব যে পিভিআরটিসি, ইটিসি 2 এবং আরও কিছু মানের সর্বাধিক মানের আরও দ্রুত হতে পারে)

প্রাথমিক ইতিহাস এবং কৌশলসমূহ

টেক্সচারের সংকোচনের বিষয়টি প্রায় তিন দশক ধরে প্রায় জেনে অবাক হতে পারে এমন কারও কারও অবাক হতে পারে। 70 এবং 80 এর দশকের ফ্লাইট সিমুলেটরগুলির তুলনামূলকভাবে বৃহত পরিমাণে টেক্সচার ডেটা অ্যাক্সেসের প্রয়োজন ছিল এবং 1980 সালে 1MB র্যাম> 6000 ডলার ছিল , টেক্সচারের পদচিহ্ন হ্রাস করা প্রয়োজনীয় ছিল। অন্য উদাহরণ হিসাবে, 70 এর দশকের মাঝামাঝি সময়ে, এমনকি উচ্চ গতির স্মৃতি এবং যুক্তি যেমন একটি পরিমিত 512x512 আরজিবি ফ্রেম বাফার জন্য যথেষ্ট ) আপনাকে ছোট বাড়ির দাম ফিরিয়ে দিতে পারে।

যদিও, এএআইএআইপি, টেক্সচার সংক্ষেপণ হিসাবে স্পষ্টভাবে উল্লেখ করা হয়নি, সাহিত্য এবং পেটেন্টগুলিতে আপনি কৌশলগুলি সহ উল্লেখগুলি খুঁজে পেতে পারেন:
ক। গাণিতিক / পদ্ধতিগত টেক্সচার সংশ্লেষণের সরল রূপগুলি,
খ। একটি একক চ্যানেল টেক্সচার (উদাহরণস্বরূপ 4bpp) ব্যবহার করুন যা প্রতি প্রতি টেক্সচার আরজিবি মান দ্বারা গুন করা হয়,
সি। YUV, এবং
ডি। প্যালেটস ( সংক্ষেপে হেকবার্টের পদ্ধতির ব্যবহারের পরামর্শ দেয় এমন সাহিত্য )

মডেলিং ইমেজ ডেটা

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

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

আরও অগ্রগতির আগে, টিসির আরও বুঝতে সাহায্য করার জন্য এটি প্রিন্সিপাল কম্পোনেন্ট অ্যানালাইসিস (পিসিএ) একবার দেখে নেওয়া মূল্যবান - ডেটা সংক্ষেপণের জন্য খুব দরকারী গাণিতিক সরঞ্জাম।

টেক্সচার উদাহরণ

বিভিন্ন পদ্ধতির তুলনা করতে, আমরা নিম্নলিখিত চিত্রটি ব্যবহার করব:

ছোট লরিকিট + পাঠ্য
দ্রষ্টব্য যে এটি মোটামুটি শক্ত চিত্র, বিশেষত প্যালেট এবং ভিকিউটিসি পদ্ধতির জন্য কারণ এটি বেশিরভাগ আরজিবি কালার কিউবকে বিস্তৃত করে এবং কেবলমাত্র 15% টেক্সেলগুলি বারবার রঙ ব্যবহার করে।

পিসি এবং (90 এর দশকের মাঝামাঝি) কনসোল টেক্সচার সংকোচন

ডেটা ব্যয় হ্রাস করতে, কিছু পিসি গেমস এবং প্রারম্ভিক গেমস কনসোলগুলি প্যালেট চিত্রগুলিও ব্যবহার করে, যা ভেক্টর কোয়ান্টাইজেশন (ভিকিউ) এর একটি রূপ। প্যালেট-ভিত্তিক পদ্ধতিগুলি এই ধারণাটি তৈরি করে যে কোনও প্রদত্ত চিত্র কেবল আরজিবি (এ) রঙের কিউবের তুলনামূলকভাবে ছোট অংশ ব্যবহার করে। প্যালেট টেক্সচারের সাথে একটি সমস্যা হ'ল অর্জিত মানের জন্য সংকোচনের হারগুলি সাধারণত বরং পরিমিত। উদাহরণস্বরূপ টেক্সচারটি "4 বিপিপি" (জিআইএমপি ব্যবহার করে) সংকুচিত করে আবার নোট তৈরি করেছে যে এটি ভিকিউ স্কিমগুলির জন্য তুলনামূলকভাবে শক্ত চিত্র।
এখানে চিত্র বর্ণনা লিখুন

বৃহত্তর ভেক্টর সহ ভিকিউ (যেমন 2 বিপিপি এআরজিবি)

বিয়ারস এট আল দ্বারা অনুপ্রাণিত হয়ে ড্রিমকাস্ট কনসোল ভিকিউ ব্যবহার করে 2x2 বা এমনকি 2x4 পিক্সেল ব্লকগুলিকে একক বাইট সহ এনকোড করে। প্যালেট টেক্সচারের "ভেক্টরগুলি" 3 বা 4 মাত্রিক হলেও 2x2 পিক্সেল ব্লকগুলি 16 টি মাত্রিক হিসাবে বিবেচনা করা যেতে পারে। সংক্ষেপণ প্রকল্পটি অনুমান করে যে এই ভেক্টরগুলির পর্যাপ্ত, আনুমানিক পুনরাবৃত্তি রয়েছে।

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

2bpp ড্রিমকাস্ট স্কিমের সাহায্যে সংকুচিত উদাহরণ চিত্রটি 2bpp ভিকিউ ফলাফল। সূচকের মানচিত্রটি হ'ল:2bpp ভিকিউ সূচক মানচিত্র

ভিকিউ ডেটা সংকোচনের বিভিন্ন উপায়ে করা যেতে পারে তবে, আইআইআরসি , উপরেরটি পিসিএ ব্যবহার করে প্রিন্ট ভেক্টর বরাবর 16 ডি ভেক্টরগুলিকে 2 সেটে বিভক্ত করা হয়েছিল যাতে দুটি প্রতিনিধি ভেক্টর গড় স্কোয়ার ত্রুটিটি কমিয়ে দেয়। প্রক্রিয়াটি 256 প্রার্থী ভেক্টর উত্পাদিত না হওয়া পর্যন্ত পুনরাবৃত্তি হয়েছিল। এরপরে প্রতিনিধিদের উন্নতি করার জন্য একটি বিশ্বব্যাপী কে-মানে / লয়েডের অ্যালগরিদম পদ্ধতির প্রয়োগ করা হয়েছিল।

রঙ স্পেস রূপান্তর tions

রঙ স্পেস ট্রান্সফরমেশনগুলি পিসিএ ব্যবহার করে উল্লেখ করে যে রঙের বিশ্বব্যাপী বিতরণ প্রায়শই একটি বড় অক্ষের সাথে ছড়িয়ে থাকে যা অন্যান্য অক্ষের সাথে কম কম ছড়িয়ে থাকে। YUV উপস্থাপনের জন্য, অনুমানগুলি হ'ল) ​​ক) প্রধান অক্ষটি প্রায়শই লুমার দিকে থাকে এবং খ) এই দিকের পরিবর্তনের জন্য চোখ আরও সংবেদনশীল।

3 ডিএফএক্স ভুডো সিস্টেম "YAB" , একটি 8 বিপিপি, "ন্যারো চ্যানেল" সংক্ষেপণ সিস্টেম সরবরাহ করেছে যা প্রতিটি 8 বিট টেক্সেলকে 322 ফর্ম্যাটে বিভক্ত করে এবং কোনও ব্যবহারকারী নির্বাচিত রঙটিকে সেই ডেটাতে আরজিবিতে ম্যাপ করার জন্য প্রয়োগ করে। প্রধান অক্ষটি এইভাবে 8 টি স্তর এবং ছোট অক্ষগুলি ছিল, 4 টি করে।

এস 3 ভার্জ চিপটিতে কিছুটা সরল, 4 বিপিপি, স্কিম ছিল যা ব্যবহারকারীকে পুরো টেক্সচারের জন্য , দুটি প্রান্তের রঙ নির্দিষ্ট করতে দেয়, যা 4bpp মনোক্রোম টেক্সচারের সাথে মূল অক্ষের সাথে থাকা উচিত। প্রতি-পিক্সেল মান তারপরে আরজিবি ফলাফল তৈরি করতে উপযুক্ত ওজনের সাথে শেষ রঙগুলিকে মিশ্রিত করে।

বিটিসি-ভিত্তিক প্রকল্পগুলি

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

এই স্কিমে, চিত্রগুলি 4x4 পিক্সেল ব্লকগুলিতে বিভক্ত হয়, যা স্থানীয়ভাবে ভিকিউ অ্যালগরিদমের সাথে কার্যকরভাবে সংকোচিত হতে পারে। প্রতিটি ব্লক দুটি "মান", a এবং b এবং 4x4 সেট ইনডেক্স বিটের দ্বারা প্রতিনিধিত্ব করে , যা প্রতিটি পিক্সেলের জন্য দুটি মানগুলির মধ্যে কোনটি ব্যবহার করে তা চিহ্নিত করে।

S3TC : 4bpp rgb (+ + 1bit আলফা নয়)
যদিও বিভিন্ন রং-রূপ ইমেজ কম্প্রেশন জন্য বিটিসি এর আমাদের কাছে আগ্রহের প্রস্তাবিত হয়েছে Iourcha এট এর S3TC , এর কিছুটা বিস্মৃত কাজ পুনঃআবিষ্কারের উপস্থিত হতে পারে যা কিছু Hoffert এট যে অ্যাপলের কুইকটাইমে ব্যবহৃত হয়েছিল।

ডাইরেক্টএক্স রূপগুলি ছাড়াই মূল এস 3 টিসি, আরজিবি বা আরজিবি + 1 বিট আলফা থেকে 4 বিপিএসের ব্লককে সংকুচিত করে। টেক্সচারের প্রতিটি 4x4 ব্লক দুটি এন্ড কালার, এবং বি দ্বারা প্রতিস্থাপিত হয় , যা থেকে অন্য দুটি রঙ পর্যন্ত স্থির ওজন, লিনিয়ার মিশ্রণের দ্বারা প্রাপ্ত হয়। আরও, ব্লকের প্রতিটি টেক্সলে একটি 2-বিট সূচক থাকে যা এই চারটি রঙের মধ্যে কীভাবে নির্বাচন করতে হয় তা নির্ধারণ করে।

উদাহরণস্বরূপ, এএমডি / এটিআই কমপ্রেসনেটর সরঞ্জাম দিয়ে সংকুচিত পরীক্ষার চিত্রটির একটি 4x4 পিক্সেল বিভাগ রয়েছে। ( প্রযুক্তিগতভাবে এটি পরীক্ষার চিত্রের 512x512 সংস্করণ থেকে নেওয়া হয়েছে তবে উদাহরণগুলি আপডেট করার জন্য আমার অভাবকে ক্ষমা করুন )। এটি সংকোচন প্রক্রিয়াটি চিত্রিত করে: রংগুলির গড় এবং মূল অক্ষটি গণনা করা হয়। তারপরে দুটি শেষ পয়েন্টগুলি খুঁজে পাওয়ার জন্য একটি সেরা ফিট করা হয় যা অক্ষের উপর 'থাকে', যা দুটি শেষ 1: 2 এবং 2: 1 মিশ্রিত করে (বা কিছু ক্ষেত্রে একটি 50:50 মিশ্রণ) সেই শেষ পয়েন্টগুলির, ত্রুটি হ্রাস করে। ফলাফল তৈরি করতে প্রতিটি আসল পিক্সেলকে সেই বর্ণের একটিতে ম্যাপ করা হয়।
এখানে চিত্র বর্ণনা লিখুন

যদি, এই ক্ষেত্রে যেমন রঙগুলি মূল অক্ষ দ্বারা যুক্তিসঙ্গত হয় তবে ত্রুটি তুলনামূলকভাবে কম হবে। তবে, নীচে প্রদর্শিত প্রতিবেশী 4x4 ব্লকের মতো, রঙগুলি আরও বৈচিত্রপূর্ণ, ত্রুটিটি আরও বেশি হবে।
এখানে চিত্র বর্ণনা লিখুন

এএমডি কমপ্রেসনেটর দিয়ে সংকুচিত উদাহরণ চিত্র :
এখানে চিত্র বর্ণনা লিখুন

যেহেতু রঙগুলি প্রতি-ব্লকে স্বতন্ত্রভাবে নির্ধারিত হয়, তাই ব্লকের সীমানায় বিচ্ছিন্নতা থাকতে পারে তবে যতক্ষণ রেজুলেশন পর্যাপ্ত পরিমাণে রাখা হয়, এই ব্লক আর্টিকাগুলি নজরে না যেতে পারে:
এখানে চিত্র বর্ণনা লিখুন

ETC1 : 4bpp আরজিবি
এরিকসন টেক্সচার সংক্ষেপন 4x4 ব্লক টেক্সেলগুলির সাথেও কাজ করে কিন্তু এই ধারণাটি তৈরি করে যে, অনেকগুলি ইউইউভির মতো টেক্সেলের একটি স্থানীয় সেটের মূল অক্ষটি প্রায়শই "লুমা" এর সাথে খুব দৃ strongly়ভাবে সম্পর্কযুক্ত হয়। টেক্সেলগুলির সেটটি তখন কেবলমাত্র গড় রঙ এবং অনুমিত অক্ষরে টেক্সেলের প্রজেকশনটির একটি উচ্চ মাত্রিক, স্কেলার 'দৈর্ঘ্য' দ্বারা উপস্থাপিত হতে পারে।

যেহেতু, এস 3 টিসি, এর তুলনায় ডেটা স্টোরেজ ব্যয় হ্রাস করে, এটি ইটিসিটিকে একটি বিভাজন স্কিম প্রবর্তনের অনুমতি দেয়, যার মাধ্যমে 4x4 ব্লক অনুভূমিক 4x2 বা উল্লম্ব 2x4 সাব-ব্লকের একটি জোড়ায় বিভক্ত হয়। এগুলির প্রত্যেকের নিজস্ব গড় রঙ রয়েছে। উদাহরণ চিত্রটি উত্পন্ন করে: চঞ্চির চারপাশের অঞ্চলটি 4x4 ব্লকের অনুভূমিক এবং উল্লম্ব বিভাজনকেও চিত্রিত করে।
এখানে চিত্র বর্ণনা লিখুন
এখানে চিত্র বর্ণনা লিখুন

গ্লোবাল + স্থানীয়

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

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

(করণীয়: চিত্রগুলি ব্রেকডাউন দেখানো যুক্ত করুন)

উদাহরণস্বরূপ, পিভিআরটিসি 1 4 বিপিপি দিয়ে সংকুচিত উদাহরণটি: চঞ্চুটির আশেপাশের অঞ্চলটির সাথে: বিটিসি-স্কিমগুলির সাথে তুলনা করে, ব্লক শিল্পগুলি সাধারণত মুছে ফেলা হয় তবে উত্সের চিত্রটিতে দৃ image় বিচ্ছিন্নতা থাকলে কখনও কখনও "ওভারশুট" হতে পারে, উদাহরণস্বরূপ লরিকিটের মাথার সিলুয়েট
এখানে চিত্র বর্ণনা লিখুন

এখানে চিত্র বর্ণনা লিখুন

2 বিপিপি বৈকল্পিকটিতে স্বাভাবিকভাবেই, 4 বিপিপি-র তুলনায় উচ্চতর ত্রুটি রয়েছে (নীল, ঘাড়ের নিকটবর্তী উচ্চ ফ্রিকোয়েন্সি অঞ্চলগুলির সাথে নির্ভুলতার নোট পড়ুন) তবে তর্কযোগ্যভাবে এখনও যুক্তিসঙ্গত মানের:
এখানে চিত্র বর্ণনা লিখুন

ডিকম্প্রেশন ব্যয়ের উপর একটি নোট

যদিও উপরে বর্ণিত স্কিমগুলির সংকোচনের অ্যালগরিদমগুলির মাঝারি থেকে উচ্চ মূল্যায়ন ব্যয় রয়েছে, তবে ডিকম্প্রেশন অ্যালগরিদমগুলি, বিশেষত হার্ডওয়্যার বাস্তবায়নের জন্য, তুলনামূলকভাবে সস্তা। উদাহরণস্বরূপ, ETC1 এর জন্য কয়েকটি MUXes এবং নিম্ন-নির্ভুলতা সংযোজকগুলির তুলনায় কিছুটা বেশি প্রয়োজন; S3TC কার্যকরভাবে সামান্য আরও সংযোজন ইউনিট মিশ্রণ সম্পাদন করতে; এবং পিভিআরটিসি, আরও কিছুটা আবার। তত্ত্ব অনুসারে, এই সাধারণ টিসি স্কিমগুলি একটি জিপিইউ আর্কিটেকচারকে ছাঁকানো এড়ানোর অনুমতি দিতে পারে ফিল্টারিংয়ের পর্যায়ে ঠিক আগে, ফলে অভ্যন্তরীণ ক্যাশের কার্যকারিতা সর্বাধিকতর হয়।

অন্যান্য স্কিম

অন্যান্য সাধারণ টিসি মোডগুলির উল্লেখ করা উচিত:

  • ETC2 - ETC1 এর একটি (4bpp) সুপারসেট যা রঙ বিতরণ করে এমন অঞ্চলগুলির পরিচালনার উন্নতি করে যা 'লুমা' দিয়ে ভালভাবে সাজায় না। এখানে একটি 4 বিপিপি বৈকল্পিকও রয়েছে যা 1 বিট আলফা সমর্থন করে এবং আরজিবিএর জন্য একটি 8 বিপিপি ফর্ম্যাট।

  • এটিসি - কার্যকরভাবে এস 3 টিসি- তে একটি ছোট পার্থক্য

  • FXT1 (3dfx) এস 3 টিসি থিমের আরও উচ্চাকাঙ্ক্ষী বৈকল্পিক ছিল

  • বিসি 6 এবং বিসি 7: এআরজিবি সমর্থনকারী একটি 8 বিপিপি, ব্লক-ভিত্তিক সিস্টেম। এইচডিআর মোডগুলি ব্যতীত, এগুলি আরও ভাল মডেল চিত্রের রঙ বিতরণ করার চেষ্টা করার জন্য ইসির চেয়ে জটিল পার্টিশন সিস্টেম ব্যবহার করে।

  • পিভিআরটিসি 2: 2 এবং 4 বিপিপি এআরজিবি। ইমেজগুলিতে দৃ strong় সীমানা সহ সীমাবদ্ধতাগুলি অতিক্রম করার জন্য এটি সহ অতিরিক্ত মোডগুলি প্রবর্তন করে।

  • এএসটিসি: এটি একটি ব্লক ভিত্তিক সিস্টেম তবে কিছুটা জটিল কারণ এটিতে বিপিপির বিস্তৃত পরিসরে লক্ষ্য করে প্রচুর ব্লক আকার রয়েছে s এটিতে সিউডো-এলোমেলো পার্টিশন জেনারেটর সহ 4 টি পর্যন্ত বিভাজন অঞ্চল এবং সূচী ডেটা এবং / অথবা রঙের নির্ভুলতা এবং রঙের মডেলগুলির জন্য পরিবর্তনশীল রেজোলিউশনের বৈশিষ্ট্য রয়েছে।


1
বাহ, এটি কোথাও একটি ব্লগ পোস্ট হওয়া উচিত! দুর্দান্ত উত্তর!
গ্ল্যাম্পার্ট

2
খুশী হলাম এটি সাহায্যের। ব্লগ হিসাবে, আমি এটি এক দশক আগে লিখেছিলাম তবে আমার এগুলি করার সত্যিই সময় নেই।
সাইমন এফ

1
পুরানো ব্লগ হোস্টিং ওয়েবসাইট মারা গেছে। এটি সর্বশেষতম সংরক্ষণাগারিত সংস্করণ: web.archive.org/web/20160322090245/http://web.onetel.net.uk/…
আহকক্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.