কোনটি সেরা মানের আছে তা জানতে দুটি ভিডিও ফাইলের সাথে তুলনা করুন


30

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

এটি কার্যকারিতা সম্পর্কে, তবে সেই ইউটিলিটিটি বাস্তবে ব্যবহারযোগ্য হওয়ার জন্য এটি ওপেন সোর্স এবং কমান্ড-লাইন হওয়া উচিত।


কিছু সম্পর্কিত তথ্য সংগ্রহ করা শুরু করতে (উপরে থাকা প্রতিটি মানদণ্ডের জন্য আসলে সমাধান নয়), এখানে রয়েছে repo.or.cz/w/mplayer.git/blob/HEAD:/TOOLS/psnr-video.sh এখানে "প্রো এর মত" জিনিস: সংক্ষেপণ .ru / ভিডিও / গুণমান_মাপ /… । তবে এটি ওপেন সোর্স নয়, এবং কেবল 2 নিরপেক্ষ ফাইলের সাথে "মূল" এবং "অনুলিপি" তুলনা করে।
pfalcon

সংশ্লিষ্ট প্রশ্ন: stackoverflow.com/questions/3518417/...
pfalcon

উত্তর:


88

আমি ভিডিও মানের গবেষণায় কাজ করি এবং আপনার প্রশ্নের সহজ উত্তর দেওয়া শক্ত। আপনি যা চান তা এমন একটি প্রোগ্রাম যা আপনাকে একটি ভিডিওর গড় মতামত স্কোর (এমওএস) দেয় , অর্থাত্ 1 এবং 5 এর মধ্যে একটি সংখ্যা বা 0 এবং 100 এর মধ্যে, যা কোনও মানুষের দ্বারা বিবেচিত মানের সাথে মিল রয়েছে correspond

আপনি কেবল বিটরেট / রেজোলিউশন / ইত্যাদি তুলনা করতে পারবেন না কেন।

কেবলমাত্র ভিডিও রেজোলিউশনের তুলনা করলে কোয়ালিটি সম্পর্কে কিছু বলা হবে না। আসলে এটি সম্পূর্ণ বিভ্রান্তিকর হতে পারে। 700 এমবি আকারের একটি 1080 পি মুভি রিপ 700MB-তে 720p রিপের চেয়েও খারাপ দেখতে পারে কারণ পূর্বেরটির জন্য, বিটরেট খুব কম, যা সমস্ত ধরণের সংকোচনের নিদর্শনগুলিকে প্রবর্তন করে।

একই রকম ফ্রেমের আকারগুলিতে বিটরেটের তুলনা করা যায় কারণ বিভিন্ন এনকোডাররা আসলে কম বিটরেটে বা তদ্বিপরীত থেকে ভাল মানের সরবরাহ করতে পারে। উদাহরণস্বরূপ, এক্সভিআইডি সহ উত্পাদিত একটি 720 পি 700 এমবি রিপটি x264 দিয়ে উত্পাদিত 700 এমবি রিপের চেয়েও খারাপ দেখবে, কারণ আধুনিকটি আরও কার্যকর।

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

  • আপনি যে ধরণের ভিডিওর সাথে তুলনা করছেন (কার্টুন, সিনেমা, সংবাদ ইত্যাদি)
  • তাদের দৈর্ঘ্য
  • তাদের দেখার শ্রোতা
  • তাদের মূল ফ্রেমের আকার
  • তাদের এনকোড করার আগে তাদের মূল "গুণ"

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

বিভিন্ন ধরণের ভিডিও মানের মেট্রিক রয়েছে!

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

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

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

উপরের মেট্রিকগুলি ভিডিও কোডিংয়ের মানের দিকে নজর রাখে, তবে এমন মেট্রিকগুলিও রয়েছে যেগুলি ভিডিও স্ট্রিম করার সময় প্রাথমিক লোডিং সময় এবং স্টলিং ইভেন্টের মতো সমস্যা অন্তর্ভুক্ত করে (যেমন আইটিইউ-টি পি .১১০৩ )।

আমি কোন সফটওয়্যার ব্যবহার করতে পারি?

ব্যবহারের জন্য প্রস্তুত সরঞ্জামগুলির একটি তালিকা যা আপনি কিছু মেট্রিক পরীক্ষা করতে ব্যবহার করতে পারেন (কিছু কেবল উইন্ডোজের জন্য রয়েছে):

এখন কি মেট্রিক আছে?

পিএসএনআর, পিএসএনআর-এইচভিএস এবং পিএসএনআর-এইচভিএস-এম

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

পিএসএনআর ফ্রেম-ফ্রেম গণনা করা যায় এবং তারপরে আপনি উদাহরণস্বরূপ চূড়ান্ত স্কোর পাওয়ার জন্য পুরো ভিডিও সিকোয়েন্সের পিএসএনআর গড় করেন। উচ্চতর পিএসএনআর আরও ভাল।

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

এসএসআইএম, এমএস-এসএসআইএম

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

ফলাফলগুলি পিএসএনআরের অনুরূপ হওয়া উচিত। আবার, এটি কাজ করার জন্য আপনাকে একটি প্রক্রিয়াজাত ভিডিওর একটি রেফারেন্স তুলনা করতে হবে এবং উভয় ভিডিও একই আকারের হওয়া উচিত।

VMAF

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

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

আপনি ভিএমএএফ স্কোর গণনা করতেও ব্যবহার ffmpegকরতে পারেন

VQM

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

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

অন্যান্য মেট্রিক্স

  • পিইভিকিউ হ'ল আইটিইউ-টি জে ২4646। এর অধীনে মানকৃত পূর্ণ-রেফারেন্স মেট্রিক। এটির লক্ষ্য মাল্টিমিডিয়া সংকেত, তবে এইচডি ভিডিও নয়।
  • ভিকিউএড-এইচডি হ'ল আইটিইউ-টি জে .৩৩৩ হিসাবে মানকযুক্ত আরও একটি পূর্ণ-রেফারেন্স মেট্রিক। যেহেতু এটি আরও নতুন, এটি এইচডি ভিডিওর পক্ষে আরও উপযুক্ত।

উভয়ই বাণিজ্যিক সমাধান এবং আপনি তাদের জন্য ডাউনলোডের জন্য কোনও সফ্টওয়্যার পাবেন না।

আইটিইউ-টি পি .১১২২ এবং আইটিইউ-টি পি .১০২২-এর মতো নো-রেফারেন্স মেট্রিক্সের কিছু আইটিইউ মান রয়েছে , যা আইপিটিভি স্ট্রিমিংয়ের জন্য বিটস্ট্রিম থেকে প্যারামিটার নিয়ে কাজ করে। ITU-T P.1203 অভিযোজিত স্ট্রিমিং ক্ষেত্রে ব্যবহার করা যেতে পারে।


সারাংশ

যদি আপনি কেবল সাধারণ উদ্দেশ্যমূলক পরিমাপযোগ্য মাপদণ্ডের তুলনা করতে চান তবে:

  • ফ্রেমের আকার
  • বিট রেট
  • প্রতি সেকেন্ডে ফ্রেম
  • ভিডিও রেজল্যুশন

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

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

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

সংক্ষিপ্তসার হিসাবে, বিটরেটকে খুব বেশি জোর দিন যদি এটি কেবল আপনার কাছে থাকে। আপনার চোখও ব্যবহার করতে ভুলবেন না :)


প্রথমত, প্রশ্নের মূল লেখক হিসাবে, আমি এর আগে মন্তব্য না করার জন্য দুঃখিত। পোস্টটি সত্যই দুর্দান্ত এবং প্রশংসিত। দুর্ভাগ্যক্রমে, আমি এটি আমার মূল প্রশ্নের উত্তর হিসাবে গ্রহণ করতে পারি না। কারণটি হ'ল: আমি ইচ্ছাকৃতভাবে এখানে প্রশ্নটি পোস্ট করেছি এবং স্ট্যাকওভারফ্লোতে নয়, কারণ আমি বিদ্যমান, ব্যবহারের জন্য প্রস্তুত সরঞ্জামের পরামর্শ চেয়েছিলাম। এটি কীভাবে এই জাতীয় সরঞ্জামটি লিখতে হবে সে সম্পর্কে প্রশ্ন করুন, আপনার উত্তরটি পরম বিজয়ী হবে be তবে দুঃখিত, আমি স্ক্র্যাচ থেকে আমার যা কিছু প্রয়োজন তা লিখতে পারি না, সুতরাং ব্যবহারকারীদের আমার কাছে প্রশ্ন জিজ্ঞাসা করা উচিত এবং উত্তরগুলি আশা করা উচিত (সম্ভবত গতকাল বা আজ নয়, সম্ভবত ভবিষ্যতে ;-)
পিফালকন

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

1

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

কমান্ড লাইনে, ffmpeg -i ভিডিও থেকে তথ্য তালিকাভুক্ত করবে। সেখান থেকে, আপনি তথ্যটি বিশ্লেষণ করতে স্ক্রিপ্ট লিখতে পারেন এবং উপযুক্ত হিসাবে এটি ওজন করতে পারেন।


ধন্যবাদ, হ্যাঁ, আমি আরও কয়েক ঘন্টার জন্য এমনটি করছিলাম যা জিজ্ঞাসা করার সিদ্ধান্ত নেওয়ার আগে কিছু ভাল, "যাদু" সরঞ্জাম উপস্থিত রয়েছে ;-)
pfalcon
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.