আমি কীভাবে .png ফাইলে গেম মেটাটাটা সঞ্চয় করতে পারি?


208

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

আমি কীভাবে এই জাতীয় বৈশিষ্ট্যটি বাস্তবায়ন করতে পারি?


5
একটি উচ্চতর স্কোর থাকা উচিত, এটি একটি খুব আকর্ষণীয় প্রশ্ন।
পিয়ের আরলাড

3
আলফা চ্যানেলটির জন্য এটি আংশিকভাবে
আপত্তিজনক

3
সম্ভবত ব্যবহারের: স্ট্যাকওভারফ্লো.com
লজিক-ইউনিট

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

3
আলফা চ্যানেলটি প্রচুরভাবে উল্লেখ করা হয়েছে, এবং অবশ্যই পিএনজিগুলি যেভাবেই মেটা ডেটা সমর্থন করে, তবে আমি কেবল ভেবেছিলাম যে আমি ব্যবহার করেছি এমন একটি প্রযুক্তি ভাগ করব - বাম থেকে ডানে, নীচে থেকে নীচে এবং একটি নির্দিষ্ট ক্রমে চ্যানেলগুলির মাধ্যমে , এবং মানগুলিকে বিজোড় বা সন্নিবেশকে গোল করে দেওয়া - এটি উপরে বা নিচে নিচে কিছু যায় আসে না। চ্যানেলগুলির যে কোনও একটিতে 1 এর পরিবর্তন কোনও লক্ষণীয় পার্থক্য তৈরি করে না এবং একটি 256x256 চিত্রে (অবশ্যই প্রতি পিক্সেল 4 বিট এ) আপনি একটি চিত্তাকর্ষক 32KB ডেটা সঞ্চয় করতে পারেন। যদি আপনার আরও বেশি প্রয়োজন হয় তবে আপনি এর পরিবর্তে% 4 এ গোল করতে পারেন - এটি অনেকটা পুরানো জিআইএফ মনের মতো দেখতে শুরু করে ..
অক্টোপয়েড

উত্তর:


56

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

নানারকমের সরঞ্জামগুলি আপনার জন্য এই তথ্য এনকোড, একটি Google অনুসন্ধান অন্তত দেখাবে এই এবং এই

কোনও পিএনজির $89শুরুতে বাইট স্বাক্ষর রয়েছে, সুতরাং এটি সম্ভব হয় যে তথ্যগুলি পিএনজি কাঠামোর পরে সন্নিবেশ করা হয়েছিল এবং কেবল স্পোর গেম দ্বারা পার্স করা হয়েছিল।

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

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


3
যতদূর আমি জানি, পিএনজির আলফা চ্যানেলের অভ্যন্তরে মণি সংগ্রহ করে met
তারা

28
পিএনজি স্বেচ্ছাসেবক মেটাডেটা খণ্ডগুলি সমর্থন করে কেন আলফা চ্যানেল বা স্টেগনোগ্রাফি ব্যবহার করবেন?
রাসেল বোরোগোভ

8
"একটি পিএনজির শুরুতে বাইট স্বাক্ষর" 89 "রয়েছে, সুতরাং সম্ভবত পিএনজি কাঠামোর আগে বা পরে তথ্য সন্নিবেশ করা হয়েছিল এবং কেবল স্পোর গেম দ্বারা কেবল বিশ্লেষণ করা হয়েছিল।" যদি এটি হত, তবে এটি হত না ' টি আর পিএনজি ফাইল হবেন না। অর্থাত্ সাধারণ চিত্র দর্শকরা এটি প্রদর্শন করতে সক্ষম হবে না।
এসভিক

3
@ রাসেলবোরোগোভের একটি মোটামুটি ভাল কারণ: পিএনজি যদি স্পোরের পাশাপাশি কিছু দিয়ে এনকোড করে থাকে তবে স্বেচ্ছাসেবী মেটাডাটা খণ্ডগুলি প্রকৃত চিত্রের ডেটার চেয়ে উপেক্ষা বা হারিয়ে যাওয়ার সম্ভাবনা বেশি থাকে। চিত্রটিতে ডেটা এনকোডিং সম্ভাবনা উন্নত করে যে আপনি যদি এটি দেখতে পান তবে আপনি এটি লোড করতে পারেন
টিম এস

@ এসভিক আসলে, আমি এমন একটি ফাইল নিয়ে খেলেছি যা বৈধ পিএনজি এবং আরআর উভয়ই ছিল। আরএন শিরোনামটি পিএনজির পরে শুরু হয়েছিল, এবং আরএআর এক্সট্র্যাক্টরগুলি ভাল ছিল। এটি অন্যভাবেও সূক্ষ্মভাবে কাজ করতে পারে।
কর্টিকগুলি 10

153

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

বিশেষত, একটি tEXtখণ্ড রয়েছে যা স্বেচ্ছাসেবক কী / মান পাঠ্য জোড়া সঞ্চয় করতে ব্যবহার করা যেতে পারে। এটি আপনি যে কোনও ধরণের স্বেচ্ছাসেবী ডেটা ঘুরে দেখানোর জন্য ব্যবহার করতে পারেন তবে আপনি সেই তথ্যটিকে পাঠ্য হিসাবে উপস্থাপন করতে পারেন (যা সম্ভবত সম্ভাব্য) fair

আপনার একটি পিএনজি লাইব্রেরির প্রয়োজন হবে যা আপনাকে এই অতিরিক্ত অংশগুলি (যেমন রেফারেন্স লাইব্রেরি ) অ্যাক্সেস এবং পরিচালনা করতে দেয় বা আপনাকে নিজেই এটি লিখতে হবে। তারপরে কী কী / মান জোড়া হিসাবে আপনার পছন্দসই ডেটা এনকোড করা যায় তা চয়ন করার বিষয়। আমি নিম্নলিখিত পরামর্শ দিতে হবে:

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

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

অন্যরা যেমন উল্লেখ করেছে, এই প্রক্রিয়াটি স্টেগনোগ্রাফি হিসাবে পরিচিত ।


3
কেউ কেবল বেস64 এর মাধ্যমে ডেটা প্রেরণ করতে এবং একক মান হিসাবে সঞ্চয় করতে পারে
কোডসইনচোস

11
@ da4c30ff মেটাডাটা হিসাবে ব্যবহারিক হিসাবে কার্যকর, স্টিগানোগ্রাফির একটি নির্দিষ্ট স্পাই-ফ্যান্টাসি শীতল ফ্যাক্টর রয়েছে যা আমাদের জনতার পক্ষে প্রতিরোধ করা শক্ত hard যদি আমি নিজেই এটি করতাম, আমি জোশ পেট্রির প্রস্তাবিত পদ্ধতিটি মাপের জন্য যোগ্যতার জন্য ব্যবহার করতাম তবে চিত্র এবং পাঠ্য একে অপরের অন্তর্ভুক্ত তা যাচাই করতে আমি নিজেই চিত্রায়নের চেকসামটি আড়াল করার জন্য স্টেগনোগ্রাফি ব্যবহার করার প্রলোভন করব - কারণ তা নয় এটি দরকারী বা সুরক্ষিত তবে এটি দুর্দান্ত কারণ। ;)
ডিএমগ্রিগরি

এখানে "টেক্সট" এর অর্থ কী? কেবলমাত্র ASCII (চরিত্র <= 127)? 0 বাদে কোনও বাইট? আদৌ কোন বাইট? অথবা অন্য কিছু? (এটি বাইনারি ডেটা লেখার জন্য আপনার যে এনকোডিংটি ব্যবহার করতে হবে তা প্রভাবিত করবে Eg উদাহরণস্বরূপ আপনার বেস 64 প্রয়োজন বা না প্রয়োজন))
এসভিচ

1
আমি পাঠ্য খণ্ডটির জন্য মানটির লিঙ্ক সহ উত্তরটি আপডেট করেছি; তবে মূলত, পাঠ্যটি আইএসও 8859-1 (8-বিট, একক-বাইট, ল্যাটিন -1 অক্ষর) অনুযায়ী ব্যাখ্যা করা হয়েছে।
জোশ

51

মোনাকোর বিকাশকারী তারা এবং স্পোর উভয়ই কীভাবে এটি সম্পাদন করেছিলেন সে সম্পর্কে একটি দুর্দান্ত নিবন্ধ তৈরি করেছিলেন ।

তারা যা করে তার মূল সারসংক্ষেপ মোটামুটি সহজ:

  • আপনার ডেটা বাইনারি রূপান্তর করুন
  • আপনার লক্ষ্য চিত্রটি কাঁচা বিটম্যাপে রূপান্তর করুন
  • কিছু অনুমানযোগ্য প্যাটার্নে চিত্রের পিক্সেল বরাবর হাঁটুন (তারা কেবল উপরের-বাম কোণে বাঁদিক থেকে ডানদিকে করেন)।
  • প্রতিটি পিক্সেলের প্রতিটি রঙ চ্যানেলের সর্বনিম্ন অর্ডার বিটটিতে একটি বিট লিখুন
  • পরিবর্তিত বিটম্যাপটি আবার পিএনজিতে রফতানি করুন

কেবল আপনার ডেটা পুনরুদ্ধার করতে বিপরীতে এটি করুন।

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

নিবন্ধ থেকে:

সর্বশেষ চিত্রটিতে লক্ষ্য করুন কীভাবে শব্দে একটি স্পষ্টভাবে অনুধাবনযোগ্য অনুভূমিক রেখা রয়েছে। এটি স্তরের তথ্যের সমাপ্তি। এর অর্থ হ'ল আমি কেবলমাত্র সর্বনিম্ন গুরুত্বপূর্ণ ব্যাট ব্যবহার করে 265x120 পিক্সেলের চিত্রের সমস্ত স্তরের ডেটা ফিট করতে পারি।

একটি ট্রিক অ্যাডেন্ডাম:

আমি যা কিছু করতে পেরেছিলাম এবং আমি বিশ্বাস করি যে স্পোরের লোকেরাও সেগুলি করেছিল, প্রকৃতপক্ষে পিক্সেলগুলিতে সমস্ত বর্ণ বিট ব্যবহার করে যা 100% স্বচ্ছ। যেহেতু p পিক্সেলগুলি স্বচ্ছ, আপনি কোন রঙে সেট করেছেন তা বিবেচ্য নয়।

আমি এটি করতে পারি না, যেহেতু আমি পুরো চিত্রটি ব্যবহার করছি, যার অর্থ আমার কাছে কোনও স্বচ্ছ পিক্সেল নেই work

এই কৌশলটি কেবলমাত্র মেটাডেটাতে সঞ্চয় করার পক্ষে কেন তাকে সমর্থন করবেন?

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

অতিরিক্ত creditণ: শব্দের নজরে পড়ার পরিমাণ হ্রাস করতে, আপনি পরিবর্তন করতে পিক্সেল নির্বাচন করতে একটি স্থির বীজ সহ একটি পিআরএনজি ব্যবহার করতে পারেন। আপনি কেবল একই রঙে কয়েকটি রঙিন চ্যানেল সংশোধন করতে পারেন।


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

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

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

1
@ ডিফিউয়ার - স্পষ্টতই স্পোর এবং মোনাকো উভয়ই গেমের ফ্রেমওয়ার্কগুলি ব্যবহার করছিল যার একটি সম্পদ লোডিং পাইপলাইন রয়েছে।
রাসেল বোরোগোভ

1
@ dfeuer আমি কিছু নিষ্পাপ পরীক্ষা করেছি। 1920x1080px ছবিতে 100kB এলোমেলো বিট লেখার সময় মেটাডেটা পদ্ধতির স্টেনোগ্রাফিক পদ্ধতির দ্বারা প্রায় 80% আকার যুক্ত হতে পারে। একটি ফাঁকা চিত্র এবং ডেস্কটপ স্ক্রিনশট পরীক্ষিত। ঠিক কোনও বিপর্যয়মূলক পার্থক্য নয়, তবে 40 মিনিটে আপনি যদি সত্যিই উদ্বিগ্ন থাকেন তবে মাংসডাটা অবশ্যই আরও ভাল (এবং আরও সুসংগত)। নোট করুন যে মেটাডেটা এখনও বেশ অদক্ষ ছিল। 100 কেবি ডেটা লেখার জন্য আমি 181 কেবি অর্জন করেছি! স্ট্রিংটি কীভাবে এনকোড করা হয়েছে বা কী কীভাবে অনুকূলিত করার জন্য জায়গা থাকতে পারে।
অ্যালেক্সিস বেঞ্জেনসনার

7

আমি স্পোরপিডিয়া থেকে কয়েকটি স্পোর জীবকে ডাউনলোড এবং পরীক্ষা করেছি। তাদের কাছ থেকে আমি শিখেছি যে:

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

এটি লক্ষণীয় যে স্পোর এটিই করে, এটি এমন একটি পদ্ধতি যা অন্যান্য অন্যান্য উদ্বেগের আগে সরলতা রাখে।

অতিরিক্ত ডেটা ব্লকের পরিবর্তে স্টেনোগ্রাফি ব্যবহারের নির্বাচনের অর্থ হ'ল চিত্রটি পুনরায় এনকোড করা থাকলে ডেটা বেঁচে থাকবে, উদাহরণস্বরূপ কোনও ওয়েবসাইটের দ্বারা, যদিও এটি স্কেলিং বা জেপিগ সংক্ষেপণ থেকে বেঁচে থাকবে না।

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

স্পোর বিন্যাসে সম্ভাব্য সহজ উন্নতির মধ্যে রয়েছে:

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