640x480 জেপিগের বৃহত্তম আকারটি কী?


25

আমি একটি ডেটা স্টোরেজ ডিভাইস তৈরি করছি যা কয়েক ঘন্টা ধরে রাতের আকাশের একটি নির্দিষ্ট সংখ্যক ছবি নেয় এবং ছবিগুলি সমস্ত কিছু তোলার পরে ডাউনলোড করা হবে। মেমরি কার্ডটি অবশ্যই একবারে সমস্ত ছবি সঞ্চয় করতে সক্ষম হবে।

যে জেপিগগুলি নেওয়া হবে সেগুলি হ'ল 640x480 পিক্সেল এবং এটি প্রয়োজনীয় যে সমস্ত 100 টির জন্য মেমরি কার্ডে পর্যাপ্ত জায়গা রয়েছে। তাহলে 640x480 জেপিগের বৃহত্তম আকারটি কী?

আমি এটি পরীক্ষা করতে কিছু পরীক্ষার ছবি তুলেছি:

# 1# 2# 3

  • "স্ট্যাকওভারফ্লো" চিত্রের ফাইলের আকার 73,774 বাইট।
  • সাদা চিত্রের ফাইলের আকারটি মাত্র 36,607 বাইট।
  • তবে চেকারযুক্ত ফটো ক্লকগুলির জন্য ফাইলের আকার 149,339 বাইটে রয়েছে।

আমি ধরে নিচ্ছি যে জটিলতার সাথে ফাইলের আকার বাড়ে।

আমি কীভাবে মেমরি কার্ডে 100 640x480 জেপিইজি ফিট করতে যথেষ্ট ঘর তৈরি করতে পারি, তারা কতটা জটিল এবং কোন আকারের হবে তা জেনে না? আমি অতিরিক্ত স্থান নষ্ট করতে চাই না কারণ আমি এই সমস্ত ক্যাপচার ডিভাইস তৈরি করতে পারি।


এটি চিত্র নির্মাতার উপর নির্ভর করে। 100-মানের JPEG সহজেই আকারে ফুঁকতে পারে। আপনার ক্যামেরা এবং ক্যামেরা সেটিংস কি?
জন ডিভোরাক

পরীক্ষার ক্যামেরাটি একটি ক্যানন পাওয়ারশট এ 1100 আইএস। আরও তথ্যের জন্য, আপনি মেটাডেটাটি পরীক্ষা করতে পারেন, কারণ আপনি কী চাইছেন তা আমি নিশ্চিত নই।
নীল বরফ

1
আপনি কি রাতের আকাশের কোনও নমুনা ছবি আলাদা করেছেন? কিউ সেটিং? পরীক্ষা হিসাবে?
কার্ল বি

2
এটা কিসের জন্য ? আপনি কি নিশ্চিত যে jpeg হ'ল বিন্যাসের সঠিক পছন্দ।
জ্যাক এইডলি

3
জ্যাক এইডলিজ মন্তব্যে কিছু ব্যাকগ্রাউন্ড যুক্ত করুন: জেপিইজি সংকোচনের চিত্রটি পরিবর্তন করে। এটি একটি ছোট ফাইলের আকার পেতে অনুমিতিগুলি এবং তথ্য ত্যাগ করে। (যদি 100% মানের না সেট করা থাকে তবে এক্ষেত্রে আপনি একটি সঙ্কুচিত ফর্ম্যাটও ব্যবহার করতে পারেন Often প্রায়শই একটি ডিজিটাল ক্যামেরায় একটি টিফ বা এমনকি একটি কাঁচা সেটিংস থাকে। এইগুলো). এটি কোনও চিত্রের আকারকে সম্পূর্ণ অনুমানযোগ্যও করে তুলবে।
হেনেস

উত্তর:


22

এখানে আমি জেপিইজি ফাইল আকারের জন্য একটি উপরের বাউন্ডের পরামর্শ দিচ্ছি। দেখুন Ilmari Karonen এর উত্তর অধিক প্রথাগত JPEG আকারের আলোচনার জন্য।

640X480 32-বিট বিটম্যাপ চিত্রের জন্য পিক্সেল স্টোরেজ স্পেসটি এমনভাবে গণনা করা যেতে পারে ( এই উত্তরের ভিত্তিতে, তবে Ignacio Vazquez-Abram 'মন্তব্য এবং এই উত্তরের ভিত্তিতে সংশোধন করা হয়েছে ):

ধরে নিই যে ফাইলটিতে কোনও সংকোচন প্রয়োগ করা হয়নি, সেখানে 307,200 পিক্সেল রয়েছে, যা একটি 0.3 এমপি। হ্যান্ডল লুক আপ টেবিল

যদি প্রতিটি পিক্সেলটিতে 32 বিট তথ্য থাকে, তবে

  1. 307,200 * 32 = 9,830,400 বিটের তথ্য
  2. বাইট মান হয়ে উঠতে 8 টি বিট দিয়ে ভাগ করুন
  3. 9,830,400 / 8 = 1228800 বাইট (বা 1.17 এমবি)

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

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

স্পষ্টতই সর্বাধিক jpeg ফাইল আকারের বিষয়টি কিছুটা বিতর্কের বিষয় to এই স্ট্যাক ওভারফ্লো উত্তরটি পিক্সেল প্রতি 20.25 বাইট বা আপনার ক্ষেত্রে 5.9 মেগাবাইটের একটি তাত্ত্বিক সর্বাধিক আকারের প্রস্তাব দেয়, তবে সেই আকারের একটি চিত্র তৈরির জন্য জেপিগ ফর্ম্যাটটির সংক্ষেপণ স্কিমটির ইচ্ছাকৃত অপব্যবহার করা দরকার, সুতরাং এরকম সম্ভাবনা খুব কমই আপনি কখনই দেখতে পাচ্ছেন না such একটি ক্যামেরা দ্বারা উত্পাদিত একটি জিনিস।


1
দুর্ভাগ্যক্রমে এমনকি সঙ্কুচিত বিটম্যাপ মানটিও কিছুটা কম, যেহেতু এটি প্যাকিং করে ass একটি প্যাকযুক্ত বিটম্যাপটি পিক্সেলটিতে 32 বিট ব্যবহার করে ( প্রান্তিককরণের কারণে), ফাইলের আকার 33% বৃদ্ধি করে।
Ignacio Vazquez-Abram

ধন্যবাদ @ IgnacioVazquez-Abram। এটিই আমি গ্রহণযোগ্য উত্তরটি সঠিক বলে ধরে নিয়েছি।
ForeverWintr

1
@ IgnacioVazquez-Abram - "প্রান্তিককরণ" প্রসেসরের দ্বারা নির্ধারিত একটি বৈশিষ্ট্য (স্টোরেজ মিডিয়াম নয়), এবং যখন প্রসেসিংয়ের জন্য ডেটা র‍্যামে থাকে তখন সুবিধাজনক। স্টোরেজ উদ্দেশ্যে, একটি 32-বিট শব্দ সারিবদ্ধকরণ একটি প্রয়োজনীয়তা এবং অবশ্যই একটি অতিরঞ্জন নয়। স্টোরেজে লেখার আগে প্যাকিং ডেটা হ'ল একটি সাধারণ ক্রিয়াকলাপ, বিশেষত নির্দিষ্ট 25% সঞ্চয়ের জন্য। আমি ডিজিটাল ক্যামেরা দেখেছি যা প্রতিটি পিক্সেল কাঁচা ফর্ম্যাটের জন্য ঠিক 3 বাইটে সঞ্চয় করে।
করাতাল

1
"... অবশ্যই একটি বাড়াবাড়ি।" আজকাল। অনেক চাঁদ আগে এটি একটি চক্র-সাশ্রয়কারী বৈশিষ্ট্য হিসাবে বিবেচিত হত (কতক্ষণ সময় লাগবে তা বোঝাতে লোডে সারিবদ্ধ হওয়ার দরকার নেই)।
Ignacio Vazquez-Abram

3
বাস্তবে, যেমন 4 পিক্সেল প্রতি বাইট যখন কিছু সিস্টেমে আরজিবি ইমেজ ডেটা জমা পারে মেমরি , প্রায় কাছাকাছি সব ইমেজ ফাইল ফরম্যাটের পিক্সেল প্রতি 3 বাইট সর্বাধিক ব্যবহার করুন (যদি না সেখানে প্রকৃত আলফা চতুর্থ বাইট সঞ্চিত চ্যানেলের)। আমার উত্তর নীচে দেখুন।
ইলমারি করোনেন

35

শুধু পরীক্ষা করতে, আমাকে পরীক্ষামূলকভাবে ফরভারওয়ান্টারের বিশ্লেষণ পরীক্ষা করতে দিন।

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

$ rawtoppm < /dev/urandom 640 480 > rnd.ppm
$ pnmtopng < rnd.ppm > rnd.png
$ du -b rnd.*
923772  rnd.png
921615  rnd.ppm

অবিচ্ছিন্নভাবে এলোমেলো আরজিবি গোলমাল, ক্ষতিহীন পিএনজি ফর্ম্যাট
(অবিচ্ছিন্নভাবে এলোমেলো আরজিবি শোরগোল, ক্ষতিহীন পিএনজি ফর্ম্যাট, 903 কেবি)

নোট (মার্চ 2017): আমি মোটামুটি আছি নিশ্চিত ছবিটি উপরে ছিল পিএনজি ফরম্যাটে যখন আমি প্রথম এই উত্তর লিখেছে এবং এটিকে পুনরায় আপলোড 2013 সালে দুর্ভাগ্যবশত, এটা হবে (এমনকি এর নীচে সেই দৃঢ়ভাবে এই বোঝা রঙ ব্যবস্থাপনা সম্পর্কে একটি মন্তব্য।) দেখে মনে হচ্ছে যে এটিকে এখানে চুপচাপ জেপিজিতে রূপান্তরিত করা হয়েছে, এখানে ভিজ্যুয়াল তুলনা অকেজো করে তুলেছে।

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

ঠিক আছে, সুতরাং সঙ্কুচিত পিপিএম ফাইলটি 640 × 480 × 3 = 921,600 বাইট দীর্ঘ, প্লাস 15 মিনিট ন্যূনতম পিপিএম শিরোলেখের জন্য প্রত্যাশিত। পিএনজি ফর্ম্যাটটি ব্যবহার করে এটি নিখরচায় সংকুচিত করার চেষ্টা করা মাত্র 2157 বাইট দ্বারা আকার বৃদ্ধি করে শেষ পর্যন্ত, পিএনজি শিরোনাম এবং মেটাডেটা দ্বারা গ্রহণ করা এবং সম্ভবত সংকোচনের অ্যালগরিদমটিতে সামান্য কিছুটা অদক্ষতা যা সংকোচনযোগ্য ডেটা সংকুচিত করার চেষ্টা করছে।

(হ্যাঁ, এটি পিক্সেলের প্রতি 3 বাইট, 4 নয়; এমনকি পিপিএম ফর্ম্যাট, যা গ্রাফিক্স ফাইলের ফর্ম্যাট হিসাবে পাওয়া যায় প্রায় ডিস্কে পিক্সেল প্রতি অপ্রয়োজনীয় চতুর্থ বাইট সংরক্ষণ করার মতো যথেষ্ট মূ isn't় নয় some কিছু থাকতে পারে প্রান্তিককরণের কারণে মেমরির ক্ষেত্রে এটি করার সুবিধা, বিশেষত আপনার যদি একটি আলফা চ্যানেলও সংরক্ষণ করা দরকার তবে কোনও ফাইলটিতে চিত্র লেখার সময় এই কারণগুলি প্রয়োগ হয় না।)

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

897249  rnd.jpg

জেপিইজি সংক্ষেপিত আরজিবি শোরগোল, গুণমান = 100, কোনও ক্রোমা সাবম্পলিং নয়
(জেপিইজি সংকুচিত আরজিবি গোলমাল, গুণমান = 100, ক্রোমা সাবসাম্পলিং, 876 কেবি)

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

সুতরাং যে সর্বোচ্চ মানের ছিল; pnmtojpegডিফল্ট (গুণমান = 75, সাব স্যাম্পলিং সক্ষম) এর মতো আরও সাধারণ সেটিংস সম্পর্কে কী ? চল এটা চেষ্টা করি:

$ pnmtojpeg < rnd.ppm > rnd2.jpg
$ du -b rnd2.jpg
185128  rnd2.jpg

জেপিইজি সংকুচিত আরজিবি শোরগোল, গুণমান = 75, ক্রোমা সাবমলিং
(জেপিইজি সংক্ষেপিত আরজিবি গোলমাল, গুণমান = 75, ক্রোমা সাবম্যাপলিং, 184 কেবি)

বাহ, 901 থেকে 184 কেবি ডাউন! যদিও এটি বেশ আক্রমণাত্মক সংকোচনের বিষয় এবং চিত্রগুলি ঘনিষ্ঠভাবে তুলনা করার সময় আপনি অবশ্যই পার্থক্যটি বলতে পারবেন। এর বেশিরভাগটি ক্রোমা সাবস্পলিংয়ের কারণে, যা মূলত মাত্র 75% রঙ (হিউ / স্যাচুরেশন) ডেটা ফেলে দেয়। জিম্পে সাবমলিং অক্ষম করে এটি ব্যবহার করে এমন একটি 350,618 বাইট ফাইল দেয় যা এখনও দেখায় (মানুষের চোখের দিকে, কমপক্ষে) ম্যাগনিটিভ করার পরেও মূলটির খুব কাছাকাছি থাকে।

যাই হোক, সব এই বিন্দু যে প্রকট হয়, কোন ব্যাপার কিভাবে সশব্দ আপনার রাতের আকাশে ফটো হতে পারে, এবং কোন ব্যাপার আপনি কিভাবে উচ্চ গুণমান নির্বাচন পারে, সেখানে শুধু কোন উপায় একটি 640 × 480 JPEG ফাইল 900 তুলনায় উল্লেখযোগ্যভাবে বৃহত্তর পেতে পারেন KB। (আচ্ছা, যদি না আপনার ক্যামেরাটি এতে একটি বহু-মেগাবাইট এক্সিফ রঙের প্রোফাইল সংযুক্ত করে থাকে বা সমান বোকা কিছু, এটি that) এবং আপনি যদি আরও সাধারণ জেপিইজি সংক্ষেপণ সেটিংস ব্যবহার করেন তবে সর্বাধিক প্রশ্রয়যোগ্য ফাইলের আকার প্রায় 200 কেবি বা আরও নীচে চলে যাবে ।


4
তাত্ত্বিকভাবে কেবল ক্ষতিকারক সংকোচনের জন্য সঙ্কুচিত না, তাই না?
ড্যানিয়েল অঙ্গুলিনির্দেশ

1
@ ড্যানিয়েলবেক: ঠিক আছে। স্পষ্টতই, আপনি যেকোন ডেটা যতটা চান সংকোচ করতে পারেন যদি আপনি কেবল এর কিছু অংশ ফেলে দিতে চান তবে। (এটি মূলত জেপিইজি সংকোচনের কাজটি করে, এটি কেবল এটি এমনভাবে করার চেষ্টা করে যে হারিয়ে যাওয়া অংশগুলি মানুষের চোখের নজরে না আসে এবং যা অবশিষ্টাংশগুলি নিখরচুভাবে এনকোড করা যায় No গোলমাল এখনও এটির জন্য একটি কঠিন মামলা, যেহেতু কেবলমাত্র
ক্ষয়ক্ষতির

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

@ বোগডাকুটু: এটি হওয়া উচিত নয়, যদিও এটি সর্বদা সম্ভব যে আপনার ব্রাউজারটি রঙ পরিচালনার সাথে কিছু অদ্ভুত কিছু করতে পারে them এগুলি গ্রাফিক্স সম্পাদক এ দুটি লোড করে রঙের মানগুলির সাথে তুলনা করার চেষ্টা করুন।
ইলমারি করোনেন

ইলমারি @ সুন্দর লেখা।
ForeverWintr
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.