PDA

View Full Version : حذف نویز با تابع medianfilter



mr.habiz
پنج شنبه 04 آبان 1391, 15:21 عصر
باسلام
کد برنامه ای می خواستم که بتونم با اون یک عکس رو گرفته روی اون نویز فلفلی و نمکی بگذارم و سپس توسط تابع medianfilter نویز رو از بین ببرم تا جایی که امکان داره.
ممنون میشم اگه کسی بتونه در این زمینه کمکم کنم.

مصطفی ساتکی
جمعه 05 آبان 1391, 11:48 صبح
این هم کد مربوطه :


void salt_pepper(cv::Mat& image, int n)
{
for (int k=0; k < n; k++)
{
int i= rand()%image.cols ;
int j = rand()%image.rows;
int color = rand() % 2;
if (image.channels() == 1)
{
if (color == 0)
image.at<uchar>(j,i)= 0;
else image.at<uchar>(j,i)= 255;
}
else if (image.channels() == 3)
{
if (color == 0)
{
image.at<cv::Vec3b>(j,i)[0]= 0;
image.at<cv::Vec3b>(j,i)[1]= 0;
image.at<cv::Vec3b>(j,i)[2]= 0;
}
else {
image.at<cv::Vec3b>(j,i)[0]= 255;
image.at<cv::Vec3b>(j,i)[1]= 255;
image.at<cv::Vec3b>(j,i)[2]= 255;

}
}
}
}

mr.habiz
جمعه 05 آبان 1391, 23:21 عصر
مرسی دوست عزیز، اما میشه کمی راجع به این کدی که لطف کردین و گذاشتین توضیح بدین و بهم بگین دقیقا medianfilter کجای این کد قرار داره؟

مصطفی ساتکی
جمعه 05 آبان 1391, 23:26 عصر
شما فقط ذکر کردید که میخاید نویز فلفل نمکی را بر روی تصویر اعمال کنید

mr.habiz
شنبه 06 آبان 1391, 00:39 صبح
بازم مرسی،اما اگه به سوال دقت می کردید متوجه میشدید هم تو عنوان ذکر کردم و هم در متن اصلی با median filter (حذف نویز فلفل نمکی)
اونم اگه بشه با تابع medfilt1