ইসিজি চিত্র থেকে কীভাবে সিগন্যালটি পুনরুদ্ধার করব


14

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

আগে

এবং আমি এই জাতীয় কিছু পেতে চাই: -

পরে

এবং তারপরে ইসিজির ডিজিটাইজেশনে এই ভিডিওর মতো ডিজিটাইজড ডেটা (x, y পয়েন্ট)

এটি কীভাবে করবেন তা সম্পর্কে আমার কোনও ধারণা নেই, তাই আমি বেশ কয়েকটি গবেষণামূলক গবেষণাপত্র অনুসন্ধান এবং পরামর্শ নিয়েছিলাম। অ্যালগরিদমের সাধারণ পদ্ধতির মতো: -

  1. ধূসর স্তরের চিত্রে পরিবর্তন করুন
  2. গ্রিডলাইনগুলি মুছুন
  3. অনুপস্থিত পয়েন্ট যোগ করুন
  4. 2D চিত্রকে 1D চিত্রে রূপান্তর করুন

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

আপনি কীভাবে আমাকে এটি করতে গাইড করতে পারেন (আমি ম্যাটল্যাব 2010 ব্যবহার করছি)? কোন সাহায্য প্রশংসা করা হবে।


আমি এখানে মূলত একই জিনিসটি জিজ্ঞাসা করেছি: stackoverflow.com/q/1657941/125507
এন্ডোলিথ

@ দীপক, মনে হচ্ছে আপনি পোস্টে উল্লিখিত কোডটির মতলব অংশটি প্রয়োগ করেছেন, আপনি যে
স্ক্রিন চিত্রটি

উত্তর:


16

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

বুনিয়াদি ধারণাটি হ'ল: আপনি আপনার চিত্রটি কলাম অনুসারে দেখুন। পিক্সেলের প্রতিটি কলাম আলাদাভাবে প্রক্রিয়া করুন। দ্রষ্টব্য, প্লটে, আমি ধূসর-মানগুলি উল্টিয়েছি। তাই কালো 1 এবং সাদা 0.
আপনি (উল্টানো) উজ্জ্বলতা পিক্সেল মান আপনি মূলত মাত্র দুটি পরিস্থিতিতে আছে প্লটে বিভক্ত করে। প্রথমটি হল, যখন আপনার কলামটি উল্লম্ব গ্রিড লাইনে নেই not প্লটটি দেখে মনে হচ্ছে

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

তবে আপনি যা দেখছেন তা হ'ল আপনার গা dark় ইইজি সর্বদা সর্বাধিক বলে মনে হচ্ছে। অতএব, খুব জটিল অ্যালগরিদম হ'ল: প্রতিটি কলামে যান এবং সর্বাধিক কালো পিক্সেলের অবস্থান নিন।

img = ColorConvert[
   ImagePad[
    Import["http://i.stack.imgur.com/500Kg.jpg"], {{0, -20}, {0, 0}}],
    "Grayscale"];

Image[
 Transpose[Function[With[{m = Min[#]},
     Map[Function[{v}, If[v == m, 1, 0]], #]]] /@ 
   Transpose[ImageData[img, "Real"]]
  ]
 ]

দ্রষ্টব্য, আমি আপনার চিত্রের ডান দিকের কিছুটা কাটা করেছি, কারণ এটি সেখানে পুরোপুরি সাদা ছিল। ফলাফল হলো

এখন আপনি পয়েন্টগুলিতে যোগ দিতে পারেন বা আপনার পছন্দ মতো প্রতিটিভাবে এটিকে ফাঁকা করতে পারেন এবং আপনি আপনার EEG পান


@ পেট্রিক: আমি ধারণাটি পছন্দ করি!
জোনাস

লক্ষ্য করুন এই শুধুমাত্র হবে কাজ যদি গ্রিডলাইন সোজা হয় এবং ইমেজ অক্ষ সমান্তরাল
endolith

@ এন্ডোলিথ, আপনি চেষ্টা করে এসেছেন, ঠিক ?? কারণ এখানে, যখন চিত্রটি সঠিকভাবে প্রান্তিক না হয় তখন এটি কাজ করে। বিটিডব্লিউ, যখন গ্রিডলাইনগুলি অনুভূমিক / উল্লম্ব নয় তখন এগুলি অপসারণের সম্পূর্ণ প্রক্রিয়াটি সম্পূর্ণ অকেজো, যেহেতু ঘোরানো চিত্রের জন্য আপনি ইইজি-র জন্য ভুল for x, y} মান পেতে পারেন।
হালিরুতন

@ পেট্রিক: আমি বোঝাতে চাইছি যদি ডিক্সটি পিক্সেলের স্থানাঙ্কের সাথে একত্রিত না করা হয় তবে আপনি সঠিক x, y মান পাবেন না।
এন্ডোলিথ

@ পেট্রিক আপনার আলগো কাজ করেছে :) এবং আমি সফলভাবে সিগন্যালটি বের করেছি তবে সিগন্যালটি ফাঁকা করতে এখনও কিছুটা অসুবিধা হচ্ছে (যেহেতু আমি চিত্র প্রক্রিয়াকরণের ক্ষেত্রে খুব নতুন) আমি কীভাবে সংকেতকে ফাঁকা করতে সাহায্য করব? আবার ধন্যবাদ :)
দীপক

5

আপনার একটি রঙের চিত্র রয়েছে যেখানে গ্রিডলাইনগুলি লাল এবং ট্রেসটি কালো। তাই কেবল লাল যে কোনও পিক্সেল উপেক্ষা করুন!

আপনি যদি নিশ্চিত না হন যে চিত্রটি ঠিকভাবে সাজানো হয়েছে আপনি স্কিউ গণনা করতে গ্রিড লাইনগুলি ব্যবহার করতে পারেন (কেবল ডানদিকে যাওয়ার সাথে সাথে চিত্রের slাল পিক্সেল / পিক্সেল)।

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

অতিরিক্ত পয়েন্টগুলির জন্য আপনি কলোম-কলাম থেকে ট্র্যান্ডটি এলোমেলো বিন্দু বা শোনার স্পাইকগুলিকে স্পট করার অনুমতি দিতে সীমা নির্ধারণ করতে পারে।

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