بایگانی برچسب برای: fishk hknda

مسئله چند وزیر یک معمای شطرنجی و ریاضیاتی است که بر اساس آن باید n وزیر شطرنج در یک صفحه n×n شطرنج به‌گونه‌ای قرار داده شوند که هیچ‌یک زیر ضرب دیگری نباشند. با توجه به اینکه وزیر به‌صورت افقی، عمودی و اُریب حرکت می‌کند، باید هر وزیر را در طول، عرض و قطر متفاوتی قرار داد.

اولین و مشهورترین شکل این مسئله معمای هشت وزیر است که برای حل آن باید ۸ وزیر را در یک صفحهً معمولی (۸×۸) شطرنج قرار داد. این مسئله ۹۲ جواب دارد که ۱۲ جواب آن منحصر به‌فرد است یعنی بقیه جواب‌ها از تقارن جواب‌های اصلی به‌دست می‌آید.

مسئله n وزیر در صورتی جواب دارد که n مساوی ۱ یا بیشتر از ۳ باشد. یعنی مسئله دو وزیر و سه وزیر راه حلی ندارند.

تاریخچه

این مسئله در سال ۱۸۴۸ توسط شطرنج بازی به نام Max Bezzel عنوان شد و ریاضی دانان بسیاری ازجمله Gauss و Georg Cantor بر روی این مسئله کار کرده و در نهایت آن را به n وزیر تعمیم دادند. اولین راه حل توسط Franz Nauck در سال ۱۸۵۰ ارائه شد که به همان مسئله n وزیر تعمیم داده شد. پس از آن Gunther راه حلی با استفاده از دترمینان ارائه داد که J.W.L. Glaisher آن را کامل نمود. در سال ۱۹۷۹، Edsger Dijkstra Nauck این مسئله را با استفاده از الگوریتم عقب‌گرد حل کرد.

حل مسئله

هشت وزیر را می‌توان با الگوریتم‌های مختلفی مانند تپه نوردی و روش ارضای محدودیت(csp) حل کرد که در زیر روش ارضای محدودیت را بررسی می‌کنیم. هر وزیری در هر ستونی هدفی دارد که همان مکانش در هرستون می‌شود یک گره .در کد زیر تعریف مکان‌ها را داریم:

Variables: { Q1, Q2, Q3, Q4 }

Domain: { (1, 2, 3, 4), (1, 2, 3, 4), (1, 2, 3, 4), (1, 2, 3, 4) }

Constraints: Alldifferent( Q1, Q2, Q3, Q4 ) and 
for i = 0...n and j = (i+1)...n, k = j-i, Q[i] != Q[j] + k and Q[i] != Q[j] - k

و این الگوریتم که برای جواب هر خانه‌است به دست می‌آید که یک csp است

min-conflicts(csp, max):
initial := complete assignment ;jamiyate avaliye
for 1..max do: ;az 1 .. akharin khane
if initial is a solution: ;if jamiyate tolide javab bod 
return initial ;barmigardanad
var := nextVar() ;da ghire indorat yek motaghair be jelo
value := leastConflicts( var ) ;taeein meghdar
var := value in initial ;gharar dadan meghdar dar motaghair
return failure ;bargash be ebtedaye algoritm

صورت مسئله

هدف از مسئله n وزیر، چیدن n مهره وزیر در یک صفحه شطرنج(n*n) است، به‌طوری‌که هیچ دو وزیری یکدیگر را گارد ندهند، یعنی هیچ دو مهره‌ای نباید در یک سطر، ستون یا قطر یکسان باشند. وزیر در خانه‌های شطرنج به صورت عرضی، طولی و قطری می‌تواند حرکت کند. مسئله n وزیر از جمله مسائل NP در هوش مصنوعی است که روش‌های جستجوی معمولی قادر به حل آن‌ها نخواهد بود

شمردن تعداد جواب‌ها

جدول زیر تعداد راه حل‌ها برای قرار دادن n وزیر بر روی صفحه n × nنشان می‌دهد. هر دو منحصر به فرد و متمایز، برای تعداد ۱-۱۴،۲۴-۲۶ است.

مسئله ی چند وزیر

  • توجه:

حالت شش وزیر جواب‌های کمتری نسبت به پنج وزیر دارد و فرمول صریحی برای یافتن تعداد جواب‌ها وجود ندارد.

روش‌های حل مسئله

الگوریتم عقبگرد

از تکنیک عقبگرد Backtracking برای حل مسائلی استفاده می‌شود که در آن‌ها دنباله‌ای از اشیاء از یک مجموعه مشخص انتخاب می‌شود، به‌طوری‌که این دنباله، ملاکی را در بر می‌گیرد. عقبگرد حالت اصلاح شدهٔ جستجوی عمقی یک درخت است. این الگوریتم همانند جستجوی عمقی است، با این تفاوت که فرزندان یک گره فقط هنگامی ملاقات می‌شوند که گره امید بخش باشد و در آن گره حلی وجود نداشته باشد. با توجه به اینکه هیچ ۲ وزیری نباید همدیگر را گارد کنند و در یک سطر نمی‌توانند باشند، تعداد کل حالت‌ها برای n=۴ برابر ۴*۴*۴*۴=۲۵۶ است. در شطرنج یک وزیر می‌تواند به مهره‌هایی که در خانه‌های عمود یا مورب به وی قرار دارند حمله کند. یا به عبارت ریاضی، اگر ردیفها و ستونهای شطرنج را از یک تا هشت شماره‌گذاری کنیم و وزیر در خانه (i، j) قرار داشته باشد، مهره‌هایی که در خانه‌های (i، m) یا (m، j) یا (i ± m، j ± m) قرار دارند توسط وزیر تهدید می‌شوند.

برای سادگی تشریح این مسئله با استفاده از روش بازگشت به عقب، فرض می‌کنیم که خانه‌های شطرنج ۴x۴ و تعداد وزیرها نیز ۴ باشد. سپس بعد از یافتن راه حل برای این مسئله ساده شده، اقدام به نوشتن الگوریتم برای مسئله اصلی می‌کنیم.

مراحل جستجو برای یافتن جواب را به این صورت دنبال می‌کنیم که: وزیر اول را در ردیف اول و ستون اول قرار می‌دهیم.

در ردیف دوم از اولین ستون به جلو رفته و به دنبال خانه‌ای می‌گردیم که مورد تهدید وزیر اول نباشد و وزیر دوم را در این خانه قرار می‌دهیم.

همانند قبل، در ردیف سوم از اولین ستون به جلو رفته و به دنبال خانه‌ای می‌گردیم که مورد تهدید وزیران اول و دوم نباشد. می‌بینیم که چنین خانه‌ای موجود نیست. پس به عقب یعنی ردیف دوم برگشته و وزیر دوم را به خانه‌ای دیگر از ردیف دوم منتقل می‌کنیم که مورد تهدید وزیر اول نباشد.

دوباره در ردیف سوم اولین خانه‌ای را میابیم که مورد تهدید دو وزیر قبلی نباشد. این بار خانه را می‌یابیم و وزیر سوم را در آن قرار می‌دهیم.

همانند قبل، در ردیف چهارم به دنبال اولین خانه‌ای می‌گردیم که مورد تهدید وزیران پیشین نباشد. چنین خانه‌ای موجود نیست. به ردیف قبل یعنی ردیف سوم باز می‌گردیم تا خانه‌ای دیگر برای وزیر سوم بیابیم. خانه دیگری وجود ندارد. به ردیف قبل یعنی ردیف دوم بر می‌گردیم تا خانه دیگری برای وزیر دوم پیدا کنیم. به آخرین ستون رسیده‌ایم و خانه دیگری نیست. به ردیف قبل یعنی ردیف اول بر می‌گردیم و وزیر اول را یک ستون به جلو می‌بریم.

در ردیف دوم اولین خانه‌ای را میابیم که مورد تهدید وزیر اول نباشد و وزیر دوم را در آن خانه قرار می‌دهیم.

در ردیف سوم اولین خانه‌ای را میابیم که مورد تهدید وزیران اول و دوم نباشد و وزیر سوم را در آن خانه می‌گذاریم.

در ردیف چهارم اولین خانه‌ای را میابیم که مورد تهدید وزیران پیشین نباشد. این بار خانه را می‌یابیم و وزیر چهارم را در آن خانه قرار می‌دهیم.

به یک جواب می‌رسیم. حال اگر فرض کنیم که این خانه جواب نیست و به مسیر خود ادامه دهیم، احتمالاً” می‌توانیم جوابهای دیگری نیز بیابیم.

شبه کد پیاده‌سازی الگوریتم عقبگرد برای مسئله n وزیر

void queens (index i)
{
	index j;
	if (promising(i))
		if (i == n)
			cout << col[1] through col[n];
		else
			for (j = 1; j <= n; j++) {
				col[i + 1] = j;
				queens(i + 1);
			}
}
bool promising (index i)
{
	index k;
	bool Switch;
	k = 1;
	Switch = true ;
	while (k < i && switch) {
		if (col[i] == col[k] || abs(col[i] – col[k] == i - k))
			switch = false;
		k++;
	}
	return Switch;
}

برنامه زبان C به صورت غیر بازگشتی

# include <stdio.h>

int b[8];

inline static int unsafe(int y) {
        int i, t, x;
        x = b[y];
        for (i = 1; i <= y; i++) {
                t = b[y - i];
                if ((t == x) ||
                     (t == x - i) ||
                     (t == x + i)) {
                        return 1;
               }
       }

        return 0;
}

static void putboard(void) {
        static int s = ۰;
        int x, y;
        printf("\n\nSolution #٪i\n", ++s);
        for (y = 0; y < 8; y++) {
                for (x = 0; x < 8; x++) {
                        printf((b[y] == x) ? "|Q": "|_");
               }
                printf("|\n");
       }
}

int main(void) {
        int y = ۰;
        b[۰] = -۱;
        while (y >= ۰) {
                do {
                        b[y]++;
               } while ((b[y] < 8) && unsafe(y));
                if (b[y] < 8) {
                        if (y < 7) {
                                b[++y] = -۱;
                       } else {
                                putboard();
                       }
               } else {
                        y--;
               }
       }

        return 0;
}

برنامه زبان ++C به صورت بازگشتی

  • برنامه زیر برای هشت وزیر نوشته شده‌است با انتخاب اعداد دیگر به جای هشت در define MAXSIZE 8 # می‌توان برای تعداد دیگری وزیر نیز استفاده کرد.
# include <assert.h>
# include <stdio.h>

# define MAXSIZE 8
class EightQueens
{
    int m_size;				
    int m_solution_count;		
    int m_attempt_count;		
    int m_queen[MAXSIZE];		
    bool m_row_inuse[MAXSIZE]; 		
    bool m_diag_rise[MAXSIZE*2];	
    bool m_diag_fall[MAXSIZE*2];	

public:

    EightQueens(int size, bool is_alt) {

	assert(size <= MAXSIZE);

	m_size = size;
	m_solution_count = 0;
	m_attempt_count = 0;

	for (int i = 0; i < m_size; i++) {
	    m_queen[i] = i;
	    m_row_inuse[i] = 0;
	}

	for (int j = 0; j < m_size*2; j++) {
	    m_diag_rise[j] = 0;
	    m_diag_fall[j] = 0;
	}

	if (is_alt) SearchAlt(0);
	else        Search(0);

   }

    int GetSolutionCount() {
	return m_solution_count;
   }

    int GetAttemptCount() {
	return m_attempt_count;
   }

private:

    void SearchAlt(int col){

	if (col == m_size) {
	    m_solution_count++;
	    return;
	}

	for (int row = 0; row < m_size; row++) {
	    m_attempt_count++;
	    if (m_row_inuse[row] == 0 && IsDiagValid(col, row)) {
		m_queen[col] = row;
		m_row_inuse[row] = 1;
		SetDiags(col, 1);
		SearchAlt(col+1);
		SetDiags(col, 0);
		m_row_inuse[row] = 0;
		m_queen[col] = -1;
	   }
	}

   }

    void Search(int col) {
	if (col == m_size) {
	    m_solution_count++;
	    return;
	}

	for (int i = col; i < m_size; i++) {
	    if (SwapQueenIfDiagValid(col, i)) {
		Search(col+1);
		UnSwapQueen(col, i);
	   };
	}
   }

    void SwapQueenBasic(int i, int j) {
	    int hold = m_queen[i];
	    m_queen[i] = m_queen[j];
	    m_queen[j] = hold;
   }

    void SetDiags(int col, int val) {
	assert(m_diag_rise[m_queen[col] + col]!= val);
	       m_diag_rise[m_queen[col] + col] =  val;
	assert(m_diag_fall[m_queen[col] - col + m_size]!= val);
	       m_diag_fall[m_queen[col] - col + m_size] =  val;
   }

    bool IsDiagValid(int col, int row) {
	return (m_diag_rise[row + col] == 0 &&
		m_diag_fall[row - col + m_size] == 0);
   }

    bool SwapQueenIfDiagValid(int i, int j) {
	m_attempt_count++;
	if (IsDiagValid(i, m_queen[j])) {
	    SwapQueenBasic(i, j);
	    SetDiags(i, 1);
            return true;
	}
        return false;
   }

    void UnSwapQueen(int i, int j) {
	SetDiags(i, 0);
	SwapQueenBasic(i, j);
   }

};

void
do_work(bool is_alt)
{
    int size = 8;

    EightQueens puzzle(size, is_alt);
    int soln = puzzle.GetSolutionCount();
    int attempt = puzzle.GetAttemptCount();
    assert(size!= 8 || soln == 92);
    const char* style = is_alt ? "cartesian": "permutation";
    printf("EightQueens[%d] has %d solutions found in %5d attempts using %s search. \n", size, soln, attempt, style);
}

int main()
{
    printf("We should have 92 solutions for 8x8. \n");
    do_work(0);
    do_work(1);
}

انیمیشن روش بازگشتی

 

مسئله چند وزیر

 

الگوریتم مونت کارلو

از الگوریتم مونت کارلو برای برآورد کردن کارایی یک الگوریتم عقبگرد استفاده می‌شود. الگوریتم‌های مونت کارلو، احتمالی هستند، یعنی دستور اجرایی بعدی گاه به‌طور تصادفی تعیین می‌شوند. در الگوریتم قطعی چنین چیزی رخ نمی‌دهد. الگوریتم مونت کارلو مقدار مورد انتظار یک متغیر تصادفی را که روی یک فضای ساده تعریف می‌شود، با استفاده از مقدار میانگین آن روی نمونه تصادفی از فضای ساده بر آورد می‌کند. تضمینی وجود ندارد که این برآورد به مقدار مورد انتظار واقعی نزدیک باشد، ولی احتمال نزدیک شدن آن، با افزایش زمان در دسترس برای الگوریتم، افزایش می‌یابد.

شبه کد پیاده‌سازی الگوریتم مونت کارلو برای الگوریتم عقبگرد مسئله n وزیر

  int ostimate _ n_ queens (int n)
   {
          index i , j , col [1..n];
          int m , mprod , numnodes ;
          set _of_ index  prom _children;
          i = ۰;
          numnodes =۱ ;
          m = ۱;

        mprod  = ۱ ;
        while  (m!= 0 && i!= n) {
        mprod = mprod * m ;
        numnodes  = numnodes + mprod * n;
        i ++;
        m = ۰ ;
        prom_childern  = Ø;
        for (j = 1 ; j ≤ n ; j++;) {
                col [i]  = j ;
                if (promising(i)) {

         m++;
         prom_children = prom _ children U {i};
                }
            }
             if (m!= ۰)  {
                 j = random selection from prom _childeren;
                 col [i];
             }
        }
         return numnodes;
     }

روش مکاشفه‌ای

برای حل این مسئله که دارای ۹۲ جواب است، باید تکنیکهایی جهت کاهش حالات، روش Brute Force یا امتحان تک تک جواب‌ها انجام شود. تعداد همه حالاتی که می‌تواند در روش Brute Force چک شود برابر ۱۶٬۷۷۷٬۲۱۶ یا هشت به توان هشت است! یکی از روش‌های حل این مسئله برای n>=4 یا n=1 استفاده از روش مکاشفه‌ای ( heuristic)است:

1- عدد n را بر عدد ۱۲ تقسیم کن و باقی‌مانده را یادداشت کن

۲- به ترتیب اعداد زوج ۲ تا n را در لیستی بنویس

۳- اگر باقی‌مانده ۳ یا ۹ بود، عدد ۲ را به انتهای لیست انتقال بده.

۴- به لیست اعداد فرد ۱ تا n را به ترتیب اضافه کن، اما اگر باقی‌مانده ۸ بود اعداد را دو به دو باهم عوض کند (مثلاً ۱و۳و۵و۷و۹ تبدیل به ۳و۱و۷و۵و۹ میشه)

۵- اگر باقی‌مانده ۲ بود جای ۱ و۳ را با هم عوض کن و ۵ را به انتهای لیست ببر.

۶- اگر باقی‌مانده ۳ یا ۹ بود، اعداد ۱ و ۳ را به انتهای لیست ببر.

۷- حال با استفاده از لیست بدست آمده وزیرها در صفحه شطرنج چیده می‌شوند، به‌طوری‌که جای وزیر ستون اول، اولین عدد لیست، جای وزیر ستون دوم، دومین عدد لیست و…

این الگوریتم یک راه حل برای حل این مسئله‌است، برای بدست آوردن همه حالات از روش‌های دیگری می‌توان استفاده کرد. روش حل مسئله ۱۲ راه حل یکتا دارد که با در نظرگیری تقارن و چرخش به ۹۲ حالت قابل تبدیل است.

روش‌های جستجوی محلی

می‌توان به مسئله ۸ وزیر به عنوان یک مسئله بهینه‌سازی نیز نگریست که در آن هدف بهینه کردن تعداد گاردهای جفت وزیرها می‌باشد.

به عنوان مثال فرض کنید در صفحه شطرنج معمولی، ۸ وزیر را به دو روش زیر قرار دهیم:

مسئله ی چند وزیرمسئله ی چند وزیر

در روش چینش سمت چپ ۳ وزیر و در روش چینش سمت راست ۴ وزیر همدیگر را گارد می‌دهند. بنابراین روش چینش قبلی بهینه تر از روش چینش فعلی است. در واقع می‌توان مسئله بهینه‌سازی را به صورت زیر تعریف کرد. فرض کنید S مجموعه همه جواب‌های ممکن برای مسئله باشد. در صورتی S* می‌تواند جواب مسئله باشد که به ازای همه جواب‌های موجود در S، S* بهینه تر از دیگر جواب‌ها باشد. در مسئله ۸ وزیر دیدیم که جوابی بهینه‌است که تعداد گاردهای جفت وزیر آن کمتر باشد.

روش‌های جستجوی محلی همگی حالت‌های همسایه حالت فعلی را برای رسیدن به بهینه‌ترین جواب بررسی می‌کنند. از این رو وجود دو تابع در همه این روش‌های جستجو الزامی است. اولین تابع میزان بهینگی جواب مسئله ارزیابی می‌کند و تابع دوم یکی از حالت‌های همسایه حالت فعلی را انتخاب می‌کند.

نحوه پیاده‌سازی و طراحی الگوریتم برای انتخاب حالت هسایه در این روش‌های جستجو از اهمیت ویژه‌ای برخوردار است. به عنوان مثال برای مسئله ۸ وزیر می‌توان به شکل‌های زیر حالت‌های همسایگی را تولید کرد:

۱) دو وزیر به تصادف انتخاب شده و جای آن دو باهم عوض گردد.

۲) یکی از وزیرها به تصادف انتخاب شده و شماره سطر آن به تصادف تغییر کند.

۳) ویزیری به تصادف انتخاب شده و یک خانه به سمت بالا یا پایین حرکت کند

مسئله چند وزیر قسمت 1
مسئله چند وزیر قسمت 2
مسئله چند وزیر قسمت 3
مسئله چند وزیر قسمت 4

بسياري از محصولات شركت هاي توليدي، در سراسر دنيا قابل فروش هستند. با توجه به اين مسئله وجود باركدهاي منحصر به فردي كه آنها را از يكديگر متمايز سازد ضروري به نظر مي رسد.تبديل اعداد به باركد خواندن باركد نياز به استاندارد مشخصي دارد. در حال حاضر در دنيا چند استاندارد براي توليد و استفاده از باركد وجود دارد كه معتبرترين آنها استاندارد EAN/UCC است كه103 كشور در دنيا از آن تبعيت مي كنند و حدود90 درصد تجارت دنيا را پوشش مي دهد.

در ايران به علت ضرورتي كه بنا به توسعه صدور كالاهاي غيرنفتي ايران به بازارهاي جهاني به وجود آمد در سال1374 سازماني با عنوان »مركز ملي شماره گذاري كالا و خدمات« زير نظر موسسه مطالعات و پژوهش هاي بازرگاني تاسيس شد و پس از انجام مطالعات لازم با انتخاب استاندارد EAN/UCC كشور ما به عضويت موسسه بين المللي EAN International درآمد. تاكنون بيش از5 هزار شركت- كه بيشتر آنها شركت هاي توليدكننده محصولات غذايي و شيميايي هستند- به عضويت اين موسسه درآمده و براي كالاها و محصولات خود باركد دريافت كرده اند.
باركد محصولات،12 رقمي است. البته در برخي از كشورها به دلايل مختلف باركد13 رقمي نيز وجود دارد.12 رقم باركد به شرح زير معني دار مي شود:

سه رقم اول نمايانگر كد كشور(626= كد ايران)،5 رقم بعدي كد شركت سازنده،4 رقم بعدي كد كالاي مربوطه و در نهايت1 رقم آخر كد كنترل توسط رايانه به منظور كنترل صحت كد مورد نظر است.
براي مثال باركد زير مربوط به دستمال كاغذي200 برگي يكي از شركت هاي توليدي است به طور حتم تا به حال در هنگام خريد يا پس از خريد كالا به علامت باركد چاپ شده در روي بسته بندي آن توجه كرده ايد و اين سئوال برايتان پيش آمده كه اين خطوط چه هستند و چه كارآيي دارند.

عامه مردم درباره باركد، نظرات متفاوتي دارند. خيلي ها فكر مي كنند باركد نمايانگر قيمت كالاست. برخي ديگر نيز باركد را علامت استاندارد و عده اي باركد را شماره مجوز كالا مي دانند.
باركد شامل يك سري عدد و تعدادي خطوط موازي سياه رنگ با ضخامت هاي مختلف در زمينه سفيد بوده كه از طريق دستگاه پويشگر (Scanner) توسط امواج مادون قرمز قابل خواندن و انتقال به رايانه است. هر يك از اين ميله ها مانند يك بيت ارزشي، معادل صفر و يك دارند.
هر يك از اين كدها در بانك اطلاعاتي مربوط، داراي اطلاعات كاملي شامل شرح، مشخصات دقيق و فني، موجودي، اطلاعات ورود و خروج براي استفاده كنندگان ذي ربط هستند.

استفاده از باركد فقط به محصولات توليدي شركت ها محدود نمي شود. در كارخانه ها و موسسات توليدي به منظور رديابي مداوم اطلاعات كالاهاي توليدي در خطوط مختلف توليد قطعات مصرفي موجود در انبارها، باركدهاي منحصر به فردي ايجاد و با اين سيستم رديابي مي شود. سيستم باركد كمك مي كند تا تغيير اطلاعات را توسط سيستم باركد به بانك هاي اطلاعاتي منتقل كرده و همواره اطلاعات موجودي هاي خود را به روز نگه داريد. در واقع باركد به عنوان يك ترمينال ورودي كمك مي كند تا تغيير يا ثبت اطلاعات با حداقل خطاي اطلاعاتي به رايانه منتقل شود.

در فروشگاه هاي بزرگي كه روزانه مقدار زيادي كالاي ريز و درشت به آنها وارد و يا خارج مي شود و مسئولين براي كنترل موجودي هاي خود همواره به اطلاعات سطوح موجودي نياز دارند استفاده از باركد بسيار ضروري است. در غير اين صورت بايد هرازگاهي با تعطيلي فروشگاه اقدام به شمارش و كنترل موجودي كرد. اين كار نه تنها بسيار دشوار و طاقت فرساست بلكه امكان بروز اشتباه در آن نيز زياد است.

در حال حاضر در كشور ما از باركد براي جمع آوري و ثبت اطلاعات مختلف استفاده هاي متنوعي مي شود. از كارت هاي حضور و غياب پرسنلي گرفته تا قبوض آب و برق و تلفن، اطلاعات خطوط توليد و ردياب محصولات، موجودي هاي انبار، كتب جهت ثبت شماره استاندارد بين المللي كتاب (شابك) و از همه بيشتر براي كالاهاي توليدي شركت ها كه در فروشگاهها ارائه مي گردد و …
براي راه اندازي سيستم هاي مبتني بر باركد، نياز به تجهيزاتي مانند نرم افزار توليد باركد، چاپگر چاپ باركد، پويشگر (Scanner) و برچسب هاي ويژه داريم.
البته توسعه و پيشرفت در زمينه باركد نيز مانند ساير علوم و فن آوريها به سرعت در حال وقوع است.

منبع


بارکد تقریبا در تمام بخشهای زندگی ما وجود دارد , در سوپر مارکتها , بیمارستانها زندانها و حتی در خانه خودمان !

بارکد تقریبا به عنوان بخشی از زندگی روزمره ما مورد قبول همه قرار گرفته اما واقعا بارکد چیست و چه چیزی را نمایش میدهد ؟

مطمئن باشید فقط شما نیستید که دوست دارید سر از راز این خطوط و فضاهای میان آنها دربیاورید خطوطی که هر روز حد اقل بر روی برچسبهای مواد غذائی یا نامه های پستی خود می بینید . همه آنها به نظر یکسان می آیند اما ي نیست زیرا هر صنعتی روش کدگذاری مخصوص به خود را دارد و از آن به عنوان استاندارد استفاده میکند که در بخشهای بعدی این روشها را توضیح خواهیم داد . اگر در فکر بکارگیری تکنولوژی بارکد در شغل خود هستید موارد مهمی است که باید در نظر بگیرید تا این تکنولوژی بر تمام مشکلات شما غلبه کرده و کار شما را سهولت ببخشد .

انواع مختلف روشهای کدگذاری

بارکد در شکلهای مختلف ارائه میشود که ساده ترین نوع آن را حتما در فروشگاهها و یا سوپر مارکتها دیده اید . اما استانداردهای دیگر بارکد هم وجود دارد که در صنایع مختلف استفاده می شود مثل : مراکز درمانی , کارخانه های صنعتی و … که تمام اینها نحوه کدگذاری (Symbology) منحصر به فرد برای خود را دارند که غیر قابل تغییر هستند. حال این سوال پیش می آید که چرا اینهمه کدهای متفاوت وجود دارد ؟ این سوال به سادگی قابل جوابگوئی است چرا که Symbology های مختلف برای حل مشکلات صنایع گوناگون به وجود آمده اند .

حالا با هم نگاهی کوتاه به برخی از Symbology های معمول می اندازیم و ببینیم چگونه و کجا و چرا از آنها استفاده میکنیم :

UPC/EAN
این نوع کدگذاری برای کنترل خروجی ( کنترل نهائی ) به کار برده میشود . کد UPC با طول ثابت میباشد و به طور خاص در فروشگاهها و کارخانجات تولید کننده مواد غذائی کاربرد دارد . این کد برای سوپرها و این چنین مواردی در نظر گرفته شده است که با استفاده از 12 رقم فضای مناسبی برای تعریف محصولات در اختیار ما قرار میدهد .

Code 39
این روش کد گذاری به این دلیل ایجاد شد تا در صنایعی که احتیاج به استفاده از حروف نیز در کنار ارقام دارند به کار برده شود . این روش کدگذاری عمومی ترین روش کدگذاری است که از قدیم به کار برده میشود . این نوع کدگذاری معمول درا تمام صنایع – به استثناء تولید کنندگان موادغذائی – به کار گرفته میشود اما با توجه به اینکه بارکد دارای طول زیادی خواهد بود برای مواردی که اندازه برچسب روی اقلام تولیدی گزینه ای قابل توجه باشد پیشنهاد نمی شود.

Code 128
این روش کدگذاری وقتی به کار می آید که شما انتخاب زیادی از حروف و ارقام داشته باشید . در صنایعی که اندازه برچسب روی اقلام. گزینه قابل توجه باشد این روش کدگذاری انتخابی مناسب برای شماست چرا که فشرده و خوانا است . از این روش کدگذاری معمولا در حمل و نقل استفاده میکنند که در آن اندازه لیبل یک مورد مهم میباشد .

Interleaved 2 of 5
از دیگر روشهای کدگذاری معمول در صنایع حمل و نقل است که در کنار آن کاربرد بسیاری در انبارها و شرکتهای عمده فروش می باشد . این کدها هم به صورت فشرده و کم جا هستند .

PDF417
این روش کدگذاری به عنوان روش دو-بعدی ( 2D ) شناخته شده است که به صورت خطی نبوده و بیشتر شما را به یاد جدول روزنامه ها می اندازد اما تفاوت این کد با سایر کدهائی که در بالا توضیح داده شد این است که PDF417 واقعا یک فایل داده های سیار ( Portable Data File ) است که مثلا میتواند شامل : اسم , آدرس , شماره تلفن منزل , شماره گواهینامه رانندگی و عکس و حتی خلاصه سوابق رانندگی شما باشد !

در نهایت اینکه این روش کدگذاری میتواند اطلاعات کامل و جامعی را در خود جای داده و حجمی در حد یک تمبر پستی داشته باشد البته طبیعی است هر چه اطلاعات شما کاملتر باشد حجم این کد نیز بزرگتر خواهد شد .

بارکدها چگونه خوانده میشوند :

بارکدها با کشیده شدن تابش کوچکی از نور روی کد چاپ شده قابل خواندن هستند . چشمان شما تنها خط قرمزی از نور را میبیند که از بارکد خوان تابیده میشود اما چه اتفاقی در تابش و بازتاب آن نور قرمز در میان این خطوط تیره و روشن می افتد ؟ قطعه ای در بارکدخوان بازتاب نور را دریافت کرده و آنرا به سیگنالهای الکتریکی تبدیل میکند . منبع تابش لیزر شروع به خواندن فضای خالی قبل از اولین خط مشکی میکند و این کار را تا انتهای کد انجام میدهد – اگر بارکد دارای این فضای خالی معین در ابتدا و انتهای خود نباشد قابل خواندن نیست که به این فضا ها Quiet Zone می گوئیم – هر چه کد ما طولانی تر باشد تعداد نوارهای ما نیز بیشتر خواهد بود و هر چه تعداد نوارهای ما بیشتر باشد باید ارتفاع نوارها نیز بیشتر شود تا کد به راحتی قابل خواندن باشد .

بارکد خوانها:

به طور کلی سه مدل بارکد خوان وجود دارد : ثابت , بارکدخوانهای سیار دسته ای و بارکدخوانهای سیار بی سیم

1 – بارکدخوانهای ثابت :

به کامپیوتر متصل میشوند و داده ها را هر بار که خوانده میشوند انتقال میدهند . وقتی یک بارکد اسکن میشود به سرعت از طریق داده الکتریکی به کیبورد منتقل میشود و باعث میشوند تا کاراکترها به سرعت هر چه تمامتر روی صفحه نمایش داده شوند . این دستگاه به قدری سریع است که در بسیاری مواقع کاربران ترجیح میدهند ازآن به عنوان صفحه کلید دوم استفاده کنند . بزرگترین مزیت این دستگاهها این است که بدون احتیاج به تغییر داده ها یا احتیاج به برنامه خاص در تمام برنامه هائی که ورودی داده از صفحه کلید را قبول میکنند مورد استفاده می باشند .
نوع دیگری از این بارکدخوانها نیز موجود است که از طریق کابل RS232 به کامپیوتر متصل میشود و به صورت کد ASCII داده را به برنامه میشناساند .

2 – بارکدخوانهای سیار دسته ای :

این نوع بدون اینکه به طور مستقیم با کامپیوتر متصل باشند اطلاعات را در حافظه خود ذخیره کرده و سپس با استفاده از پایه اطلاعات آن روی کامپیوتر منتقل میشود . . این دستگاهها شامل یک اسکن کننده بارکد , یک صفحه نمایش برای انجام کار مورد نظر و یک صفحه کلید کوچک برای وارد کردن داده های مورد نظر مثل تعداد کالا و … هستند . ضمن اینکه یک پایه (Cradle) نیز برای انتقال اطلاعات به کامپیوتر حتما باید تهیه شود . این مدل بارکدخوانها در مواردی به کار میروند که احتیاج به جابجائی کاربر الزامی و داده های جمع آوری شده در لحظه مورد نیاز نیستند . این دستگاهها به صورتهای زیر استفاده میشوند که برنامه شما تعیین میکند که به کدام صورت استفاده شود :

قرار گرفتن روی دست (Handheld)    قرار گرفتن در کیف (Wearable)        قرار گرفتن در ماشین (Truck)

3 – بارکدخوانهای سیار بی سیم :

این نوع از بارکدخوانها هم اطلاعات را در حافظه نگهداری میکنند اما انتقال اطلاعات به صورت بلادرنگ انجام میشود این مدل از بارکدخوانها در مواردی که دسترسی اطلاعات برای تصمیمات مهم است استفاده میشود . . این دستگاهها شامل یک اسکن کننده بارکد , یک صفحه نمایش برای انجام کار مورد نظر و یک صفحه کلید کوچک برای وارد کردن داده های مورد نظر مثل تعداد کالا و … هستند . ضمن اینکه یک پایه (Cradle) نیز برای انتقال اطلاعات به کامپیوتر حتما باید تهیه شود. وقتی شما احتیاج به انتقال سریع اطلاعات دارید این دستگاههای بی سیم هستند که کار شما را عملی میکنند . این دستگاهها به صورتهای زیر استفاده میشوند که برنامه شما تعیین میکند که به کدام صورت استفاده شود :

قرار گرفتن روی دست (Handheld)      قرار گرفتن در کیف (Wearable)       قرار گرفتن در ماشین (Truck)

اسکنر چکونه کار میکند :

پایه هر دستگاه بارکد خوان یک اسکن کننده , یک رمزگشاینده و یک کابل ارتباطی میان کامپیوتر و دستگاه بارکد خوان میباشد . وظیفه اسکن کننده این است که کد را اسکن کرده و داده های خروجی الکتریکی ایجاد نماید که داده ها با نوارهای مشکی و فاصله بین آنها مرتبط است . این داده های الکتریکی سپس توسط رمز گشا آنالیز شده و بر اساس نوع کدگذاری و محتوی کد به صورت متعارف کامپیوتری ( شامل حروف – اعداد و یا علامتهای دیگر استاندارد مثل ” – ” و ” . ” و … ) نمایش داده می شود .

همچنین اسکن کننده ها میتوانند که این رمزگشا را به صورت داخلی داشته باشند و یا کدها را به صورت رمزگشائی نشده در خود نگهداری کنند که در این حالت احتیاج به وسیله ای دیگر دارند که به آن رابط یا Wedge می گوئیم . در این حالت کدها به محض اتصال به این رابط توسط رابط رمزگشائی میشوند و به مکان مورد نظر ما ( برای مثال بانک داده ها ) منتقل میشوند .

این روش اسکن شدن بیشتر در بارکدخوانهای سیار به کار برده میشود .

کدام بارکدخوان برای کار و نرم افزار شما مناسب است ؟

با تمام انتخابهائی که برای شما وجود دارند مهمترین نکته برای انتخاب درست دستگاه این است که شما به خوبی محیط کار و برنامه خود را قبل از اینکه هر تصمیمی بگیرید مطالعه کنید . برای این منظور سوالات زیر شما را در این انتخاب راهنمائی میکند :

* – دستگاهها در چه محیطی به کار میروند ؟ در یک محیط کاملا سخت صنعتی یا در یک فروشگاه معمولی !

* – استفاده از دستگاه برای مدت مشخصی می باشد یا به طور دائم از آن استفاده خواهد شد ؟

* – آیا به قابلیت سیار بودن دستگاه احتیاج دارید ؟

* – آیا خواندن کدها در نزدیکی کالاها می باشد یا در فاصله دورتر قرار دارند ؟

*- دستگاه چگونه به کامپیوتر متصل میشود ؟

*- آیا اطلاعات خوانده شده باید سریعا منتقل شوند یا خیر ؟

به خاطر داشته باشید که دامنه انتخاب دستگاههای بارکد خوان بسیار وسیع هست که از انها در هر برنامه ای بتوان استفاده کرد پس هرگز اولین دستگاهی را که به نظر مناسب کار شما بود انتخاب نکنید چه بسا ارزانترین دستگاه به راحتی و مفیدتر برای شما مورد استفاده داشته باشد .

آیا دستگاه بارکد خوان با کامپیوتر من سازگار است ؟

هیچ برنامه خاصی لازم نیست که اطلاعات را به کامپیوتر شما انتقال دهد . این دستگاهها به راحتی توسط اسکن کننده و رمزگشای خود اطلاعات را به سیستم شما انتقال میدهند و لازم نیست شما کار دیگری انجام دهید . هرچند کامپیوتر شما برای خواندن کدها مشکل خاصی را نخواهد داشت اما در مواقعی ممکن است قابلیت چاپ کدها را نداشته باشد که در این صورت شما با ارتقاء سیستم خود و یا با خرید برچسبهای از قبل چاپ شده و یا حتی خرید دستگاههای چاپ بارکد به راحتی این مشکل را حل خواهید کرد و برچسبهای خود را بر روی محصولاتتان می چسبانید .

چاپ بارکد :

با داشتن یک برنامه خوب کامپیوتری تمام پرینترهای سوزنی , حرارتی و لیزری قادر هستند تا بارکد را با کیفیتی خوب چاپ کنند اما اگر شما میخواهید که بهترین چاپ را داشته باشید از چاپگرهای مخصوص چاپ برچسب استفاده کنید که برای چاپ تعداد زیادی برچسب هم مناسب هستند . اما اگر احتیاج به چاپ چند لیبل در زمانی خاص دارید میتوانید از چاپگرهای سوزنی نیز استفاده کنید . تقریبا اکثر صنایع – کوچک و بزرگ – از چاپگرهای حرارتی مخصوص برچسب استفاده میکنند زیرا به راحتی رولهای برچسب را چاپ کرده و مهمتر از آن چاپ سریع و با کیفیت بارکدهاست که این پرینترها را در اولویت اول قرار میدهد .

استفاده از بارکد در هر کجا !

تمام صنایع میتوانند از مزیتهای تکنولوژی بارکد سود ببرند . در زیر برخی از موارد کاربردی بارکدها را ذکر میکنیم :

کارخانجات :
کارخانجات بزرگ و کوچک , انبارها میتوانند از مزایای سهولت استفاده از بارکد استفاده کنند که این سیستم با تمام روشهای مدیریتی مثل MRP , WMS و MES سازگار است .

حمل و نقل :
استفاده از بارکد در صنعت حمل و نقل باعث راحتی مدیریت کالاهای ثابت یا در حال حرکت می شود .هماهنگی بارکد با سیستمهای مختلف شبکه ای باعث کاهش هزینه ها و ایجاد خدمات بهتر برای مشتریان می شود .

فروشگاهها :
با استفاده از بارکد در فروشگاهها میتوان کنترل دقیقی روی ورود و خروج کالاها , موجودی انبار و قیمت جنسها در لحظه داشت ضمن اینکه با استفاده از ارتباط بی سیم میتوان به راحتی در لحظه سفارش مشتری را ثبت و خرید را انجام داد .

مراکز درمانی :
استفاده از سیستم بارکد در مراکز درمانی باعث میشود تا مدیریت اطلاعات مهمی نظیر : پیشینه پزشکی بیمار , نوع بیمه و سایر اطلاعات به دست آورد.


بررسی اجمالی استانداردهای رایج برای بارکد و حروف و کاراکترهایی که پشتیبانی می کنند.

استانداردهای رایج برای بارکد

پسورد فایل : behsanandish.com

بارکد چیست؟ قسمت 1
بارکد چیست؟ قسمت 2

چكيده

امروزه امنيت فناوري اطلاعات و قابليت ذخيره، انتقال و پردازش اطلاعات بدون هرگونه تغيير توسط كاربران غيرمجاز، بزرگترين چالش در عصر اطلاعات و ارتباطات به شمار مي رود. اين مسئله در مواردي همچون انتخابات، آزمون و بانكداري الكترونيك از اهميت به سزايي برخوردار است. استفاده از راهكاري كه ضمن فراهم نمودن كنترل هاي امنيتي مناسب بتواند از مداخله ساير عوامل خارجي، در دستكاري داده ها و دستبردهاي غيرمجاز به اطلاعات جلوگيري نمايد همواره به عنوان موضوعي مهم، مورد نظر كارشناسان امنيت اطلاعات است. به همين منظور، استفاده از فناوري هايي همچون زيست سنجی به طور جدي مد نظر قرار گرفته اند.
در اين مقاله سعي مي شود تا با بررسي ويژگي هاي مورد استفاده در فناوري زيست سنجی، ضمن بيان ضعف هايي كه ويژگي هاي زيست سنجشي فعلي با آن روبرو هستند، راهكاري اثربخش و كاربردي براي جلوگيري از نفوذ به سيستم ها از طريق فناوري زيست سنجی ارايه گردد.

1- مقدمه

يكي از اساسي ترين مسايل در خدمات الكترونيك و تأمين امنيت در فرآيندهاي الكترونيكي، جلوگيري از دسترسي غيرمجاز به داده ها و اطلاعات است كه اين دسترسي نامجاز معمولاً با اهدافي همچون نفوذ به سيستم ها، شنود غيرقانوني، وقفه در انتقال اطلاعات، تخريب، تغيير و حذف داده ها به منظور بي اعتبارسازي اطلاعات يا ايجاد خلل در ارايه خدمات الكترونيك صورت مي گيرد. بنابراين از آن جا كه چالش اصلي در خدمات الكترونيك و تأمين امنيت اطلاعات در شبكه هاي رايانه اي، اطمينان كافي از دسترسي فرد مجاز و در زمان هاي مجاز به اطلاعات است فرآيند تصديق هويت امن و روش هاي احراز آن از مهم ترين مسايل در برقراري امنيت به حساب مي آيد.
تاكنون روش ها و تجهيزات بسيار مختلفي براي بررسي و شناسايي هويت كاربران، پيشنهاد گرديده است كه در مراكز زيادي نيز مورد استفاده قرار گرفته اند اما متأسفانه هر كدام از اين روش ها داراي معايبي هستند كه موجب كاركرد نادرست آن ها شده است. از اين رو، انتخاب شيوه مناسبي كه علاوه بر احراز هويت كاربران در كوتاهترين زمان ممكن، بتواند امنيت لازم را در سيستم هاي الكترونيكي تضمين نمايد همواره به عنوان يك مسئله اساسي مطرح بوده است.
يكي از روش هايي كه با استفاده از آن سعي مي شود تا با احراز هويت كاربران و جلوگيري از دسترسي افراد نامجاز به داده ها، قابليت اطمينان به اطلاعات همچنان حفظ گردد، بهره گيري از فناوري زيست سنجی براي شناسايي كاربران در هنگام دسترسي به سيستم هاي اطلاعاتي مي باشد.

2- فناوري زيست سنجی

استفاده از خصوصيات فيزيولوژيكي يا رفتاري فرد و تحليل آن به منظور شناسايي آن فرد كه تحت عنوان فناوري زيست سنجی شناخته مي شود به نوع خاصي از روش هاي امنيتي گفته مي شود كه در آن براي كنترل دسترسي و برقراري امنيت، از خواص قابل اندازه گيري بدن انسان يا هر موجود زنده ديگري استفاده مي شود. همان گونه كه از كلمه زيست سنجی برمي آيد در اين روش با استفاده از الگوريتم هاي رياضي، برداشت هاي ثابت و يكتايي از اندام هاي بدن مي شود كه مي توان از آن به عنوان يك كلمه عبور يكسان و غيرقابل تغيير استفاده كرد. بنابراين در روش زيست سنجی، از ويژگي هاي فيزيولوژيكي يا رفتاري يك شخص براي شناسايي و تأييد خودكار هويت او در سيستم استفاده مي شود كه يا نيازمند تماس فيزيكي مستقيم شخص با يك پويشگر زيست سنجشي است (مانند اثر انگشت) و يا به تماس فيزيكي فرد با پويشگر نيازي نيست (مانند شكل صورت، اجزاي چهره، تن صدا و …).
معمولاً ويژگي هاي انسان ها براي آن كه بتواند در فناوري زيست سنجی مورد استفاده قرار گيرد، با 9 پارامتر مورد ارزيابي قرار مي گيرد كه عبارتند از:

  • * عموميت: هر شخص داراي آن ويژگي باشد.
  • * يكتايي: چه تعداد نمونه متفاوت را مي توان تفكيك كرد.
  • * دوام: معياري براي سنجش آن كه يك ويژگي، چه مدت عمر مي كند.
  • * قابليت ارزيابي: سهولت استفاده براي ارزيابي نمونه هاي متفاوت؛
  • * كارايي: دقت، سرعت و پايداري روش مورد استفاده؛
  • * مقبوليت: ميزان پذيرش تكنولوژي؛
  • * جايگزيني: سهولت در استفاده از جايگزيني؛
  • * تصديق هويت: در تصديق هويت، مشخصه يك فرد به پايگاه اطلاعات ارسال مي شود و هدف، بررسي آن به منظور تصديق هويت آن فرد مي باشد كه پاسخ سيستم، الزاماً مثبت يا منفي است.
  • * تشخيص هويت: در سيستم هاي تشخيص هويت، مشخصه زيست سنجی فرد به سيستم ارايه مي شود و سيستم با جستجوي پايگاه اطلاعات، مشخصات فرد را در صورت موجود بودن استخراج مي كند.

براي اين كه يك ويژگي بدن بتواند به عنوان يك وسيله اندازه گيري مطرح شود بايد شرايط خاصي داشته باشد، به عنوان مثال، بايد ثابت باشد. به همين خاطر نمي توان رنگ مو يا وزن را به عنوان يك خاصيت زيست سنجی در نظر گرفت زيرا به طور دايم در حال تغيير و تبديل هستند. در ضمن، خواص انتخاب شده مي بايست نشان دهنده يك انسان خاص بوده و همچنين به سهولت قابل دسترسي باشد يعني بررسي آن نياز به زحمت زيادي نداشته باشد.
به طور كلي، ويژگي هاي زيست سنجی را مي توان به 2 دسته تقسيم نمود:

  • 1. خصوصيات وابسته به فيزيك انسان ها: اين دسته از ويژگي ها به مجموعه اي از خصوصيات همراه انسان اعم از اثر انگشت، عنبيه چشم، چهره، DNA و … اشاره دارد. اين ويژگي ها از بدو تولد انسان و گاهي قبل از تولد، شروع به شكل گيري نموده و تا آخر عمر، به طور ثابت و غيرقابل تغيير در بدن انسان باقي مي مانند.
  • 2. خصوصيات رفتاري انسان ها: اين دسته از ويژگي ها در حقيقت، خصوصيات ناشي از رفتارهاي انسان هاست، همانند چگونگي راه رفتن، نحوه فشردن دكمه ها (مثلاً تلفن همراه) و … كه مي تواند بيانگر مشخصات يك انسان خاص باشد، مانند راه رفتن يك انسان كه گاهي با نگاه كردن آن از پشت سر مي توان تشخيص داد كه وي كدام شخص است.

3- مزاياي استفاده از سيستم هاي امنيتي زيست سنجی

با استفاده از روش هاي زيست سنجی مي توان تقريباً مطمئن شد همان كسي كه انتظارش مي رود، به امكانات و منابع دسترسي دارد. براي مثال، اثر انگشت، همواره يكتا و يكسان است و مشكلاتي مانند فراموش كردن رمز عبور يا گم كردن آن در اين روش وجود ندارد، سرعت بسيار بالايي دارد و براي كاربران عادي نياز به آموزش نمي باشد، امكان سرقت دستگاه هاي زيست سنجی نيز بسيار كم است يا در پاره اي از مواقع، صفر مي باشد. تمام اين مزايا باعث شده است كه امروزه براي تأمين امنيت اكثر سيستم هاي رايانه اي و مبتني بر شبكه، به طور گسترده اي از روش هاي زيست سنجی استفاده شود. البته سيستم هاي زيست سنجی داراي معايب خاص خودشان هستند اما به دليل مزاياي بسيار زيادي كه نسبت به روش هاي سنتي شناسايي افراد دارند، استفاده از آن ها روز به روز در حال افزايش است.

4- معايب استفاده از فناوري زيست سنجی

اگرچه فناوري زيست سنجی در طول ساليان متمادي به عنوان روشي براي احراز هويت كاربران توسط سازمان هاي مختلفي در سطح جهان، مورد استفاده قرار گرفته اما در سال هاي اخير، با افزايش دانش نفوذگران كه در پي رشد سريع فناوري اطلاعات توانسته اند با تحليل سازوكارهاي عملياتي سيستم هاي زيست سنجی، راه هاي نفوذي به درون آن ها پيدا كنند، دستخوش تغييرات بزرگي گرديده است. امروزه با نفوذهايي كه به سيستم هاي اطلاعاتي از طريق اين فناوري صورت مي گيرد، شايسته است روش هاي بهره گيري از آن مورد بازنگري جدي قرار گيرد تا علاوه بر كاهش خطرات و تهديدها، اعتماد عمومي كاربران و به خصوص سازمان هاي استفاده كننده از اين فناوري نيز همچنان حفظ گردد.

5- روش هاي تعيين هويت در فناوري زيست سنجی و بررسي نقاط ضعف آنها

روش هاي متنوعي براي تعيين هويت زيست سنجی وجود دارد، مانند تعيين هويت از طريق اثر انگشت، بررسي دقيق كف دست، رگ هاي كف دست، كنترل شبكيه چشم، تعيين كنترل رگ هاي چشم، هندسه صورت، امضا، صدا، عنبيه چشم، راه رفتن، تعيين هويت از طريق چهره و … كه در زير به بيان مزايا و مشكلات هر يك از آن ها مي پردازيم.

يكي از ويژگي هاي زيست سنجشي كه معمولاً به صورت گسترده در هنگام شناسايي كاربران مورد استفاده قرار مي گيرد، اثر انگشت است كه از قديمي ترين و رايج ترين روش هاي تشخيص هويت نيز به شمار مي رود. پوست نوك انگشت ها داراي يكسري شيارها و خطوط برآمده اي است كه از يك طرف انگشت به طرف ديگر ادامه دارد و در مجموع به عنوان اثر انگشت شناخته مي شود. اين خطوط داراي يكسري نقاط مشخصي هستند كه به آن ها ويژگي يا مشخصه مي گويند. اين ويژگي ها شامل كمان ها، مارپيچ ها، حلقه ها، انتهاي لبه ها، انشعاب ها، نقطه ها (شيارهاي نزديك به لبه ها)، جزاير (دو انشعاب نزديك به هم)، تقاطع (نقطه تلاقي دو يا چند لبه) و منفذها مي باشند كه در نهايت، از الگوي ايجاد شده توسط آن ها براي تشخيص هويت افراد استفاده مي شود.

تعيين هويت افراد با استفاده از اثر انگشت، نسبت به ساير روش هاي زيست سنجی تعيين هويت به طور گسترده اي مورد استفاده قرار مي گيرد. امروزه از اثر انگشت در صنايع رايانه اي مانند كنترل لايسنس نرم افزارها، ورود به شبكه و سيستم ها و مواردي همچون بازكردن درب اتومبيل، روشن كردن خودرو، بازكردن قفل گاو صندوق و درب ها به طور گسترده اي استفاده مي شود. بزرگترين دليل استفاده گسترده و عمومي از اثر انگشت به عنوان ابزار تعيين هويت اين است كه اثر انگشت افراد، منحصر به فرد بوده و در طول عمر شخص تغيير نمي كند.

اولين استفاده از اثر انگشت در مسايل تشخيص هويت به حدود سال 1900 برمي گردد. در ابتدا براي تشخيص يك اثر انگشت از ديگري سعي در تطبيق خطوط آن بود كه به علت وجود خطاي انساني، معمولاً شامل خطاهايي در اين زمينه است. براي رفع اين مشكل، دستگاه هايي براي تشخيص اثر انگشت ايجاد شدند. از ابتدايي ترين اين دستگاه ها مي توان به دستگاه هاي حسگر اثر انگشت نوري اشاره كرد كه در حدود سال 1970 طراحي گرديدند كه بر اساس بازتابش داخلي كار مي كردند. به اين معني كه منبع نور، به سطح شيشه اي كه انگشت روي آن قرار داشت تابيده شده و بازتابش آن جذب مي شود. مقدار اين نور بازتابيده شده بستگي به عمق شيارهاي سطح پوست و بيشترين بازتابش، مربوط به سطح در تماس پوست با شيشه است. مزاياي اين طرح عبارتند از صرف زمان اندك براي شناسايي، مقاوم بودن در مقابل تداخل الكترواستاتيكي و قيمت ارزان علاوه بر وضوح خوب كه در مقابل معايبي همچون اندازه بزرگ دستگاه، امكان جعل بالا و پيچيدگي هاي به كار رفته، قرار دارند.

دستگاه هاي ديگري كه براي ثبت اثر انگشت طراحي گرديدند داراي حسگرهايي از نوع حالت جامد، مانند حسگر اثر انگشت گرمايي بودند. اين نوع حسگرها از تفاوت گرمايي بين شكاف ها و برآمدگي هاي اثر انگشت به عنوان پارامتري تعيين كننده استفاده مي كنند. بدين معني كه جاهايي از پوست دست (برآمدگي ها) كه در تماس با سطح حسگر مي باشند، تفاوت گرمايي را نسبت به نقاطي كه در تماس نيستند (شيارها) احساس مي كنند. مزاياي اين حسگر نيز حجم كم دستگاه، ارزان بودن و امكان يكپارچگي آن ها مي باشد كه البته معايبي چون توان مصرفي بالا، دقت پايين و تأثيرپذيري از دماي محيط را هم دارند.
از حدود سال 1997، استفاده از دانش MEMS در حسگرهاي اثر انگشت آغاز گرديد كه تاكنون چند نمونه از دستگاه هايي كه با اين نوع از حسگرها طراحي و ساخته شده اند روانه بازار گرديده اند كه آخرين نمونه آن ها در سال 2008 ارايه گرديد.در اين دستگاه ها از نوعي حسگر به نام حسگرهاي خازني استفاده شده است كه بر پايه تغييرات خازني كار مي كنند و شامل دو صفحه فلزي مي باشند كه نقش الكترودهاي خازن را دارند. براي ايجاد تغييرات خازني، يكي از صفحه ها بسته به نوع نياز، متحرك و ديگري ثابت است. صفحه متحرك كه ديافراگم ناميده مي شود بر اثر اعمال فشار خارجي جابه جا شده و باعث كم شدن فاصله هوايي بين الكترودهاي خازن گرديده و تغييرات خازني را موجب مي شود.

در حسگرهاي خازني مورد استفاده در حسگر اثر انگشت، صفحه بالايي به عنوان ديافراگم در نظر گرفته مي شود كه بر اثر فشار اعمالي بر اثر تماس با سطح پوست دست (برآمدگي هاي سطح پوست انگشت) جابه جا مي شود. از عوامل مؤثر در عملكرد حسگرهاي اثر انگشت MEMS مي توان مواردي همچون ابعاد ديافراگم، ساختار خازن، مواد تشكيل دهنده ديافراگم كه باعث حساسيت خيلي زياد حسگرها مي شود و همچنين اندازه، شكل و ضخامت ديافراگم را بيان نمود و از آن جا كه ساختار حسگر انگشت بر پايه ساختار اين خازن ها بنا نهاده شده است، با افزايش حساسيت مكانيكي و الكتريكي اين خازن ها، حساسيت حسگر اثر انگشت نيز بهبود پيدا مي كند.

هر چند كه استفاده از ويژگي اثر انگشت به عنوان يك روش مطلوب به حساب نمي آيد اما به علت كم هزينه تر بودن آن نسبت به ساير روش هاي زيست سنجشي، مورد اقبال بيشتري قرار گرفته است. تصديق هويتي كه به وسيله اثر انگشت صورت مي گيرد، سريع و قابل اطمينان بوده و چون به صورت مستقيم توسط ابزارهاي ديجيتالي تهيه مي گردد، داراي جزييات بيشتر، وضوح بهتر و دقت بالاتري مي باشد. همچنين اين روش نسبت به ساير روش هاي زيست سنجشي از خطاي كمتر و هزينه پايين تري هم برخوردار بوده و تجهيزات و دستگاه هاي ثبت اثر انگشت نيز كوچكتر مي باشند و فضاي كمتري را اشغال مي كنند.

از مهمترين مشكلاتي كه سيستم هاي ثبت اثر انگشت با آن مواجه هستند امكان جعل اثر انگشت توسط لايه هاي نازكي از ژلاتين يا خميرهاي سيليكن قابل جعل است. روشي كه مي توان اعتبار اين زيست سنجه را حفظ نمود، استفاده از چند اثر انگشت در هنگام احراز هويت يا اثر انگشت همراه با كارت شناسايي يا اثر انگشت به همراه رمز عبور مي باشد كه از آن ها به عنوان روش هاي شناسايي دو مرحله اي ياد مي شود. روش بهتر ديگري كه مي توان بدون استفاده از ساير تجهيزات جانبي با استفاده از زيست سنجه هاي اثر انگشت به احراز هويت كاربران پرداخت، بهره گيري از عرق و گرماي انگشت به عنوان نشانه هايي از حيات است كه امكان تقلب را كاهش مي دهد. همچنين با تعيين مدت زمان پويش اثر انگشت (مثلاً 2 ثانيه) مي توان از جا زدن افراد به جاي ديگري در اين مدت زمان كم جلوگيري نمود.

استفاده از روش هاي زيست سنجی در فرآيند تصديق هويت از طريق اثر انگشت، داراي چندين نقطه ضعف عمده مي باشد كه در زير به برخي از آن ها اشاره مي شود:

  • * جعل ورودي: يكي از رايج ترين حملات موجود در سيستم هاي تصديق هويت زيست سنجی مانند اثر انگشت، جعل ورودي يا وارد كردن يك ورودي به جاي ورودي واقعي مي باشد. اين حمله ساده ترين راهكار براي يك مهاجم است تا بتواند با اثر انگشت مصنوعي و ساختگي، فرآيند تصديق هويت را انجام دهد.

تاكنون تحقيق ها و پژوهش هاي بسياري براي جلوگيري از ورود ويژگي هاي زيست سنجی غيرواقعي و ساختگي پيشنهاد شده است كه تا حد قابل قبولي توانسته اند اين سيستم ها را امن نمايند. يكي از راه هايي كه براي غلبه بر ورودي هاي نامعتبر و جعلي در سيستم هاي تشخيص هويت بر پايه اثر انگشت وجود دارد، روش تشخيص زنده نام دارد. بدين معني كه از تأييد اثر انگشت ساختگي و مصنوعي توسط عرق كردن يا حرارتي كه روي انگشتان وجود دارد از نشانه هايي براي تازگي و زنده بودن انگشت استفاده مي شود كه اين ويژگي ها در انگشت مصنوعي يا ساير روش هاي جعل وجود ندارد.

  • * كيفيت پايين ورودي: تكنيك هاي تطابق اثر انگشت به 2 صورت ممكن است انجام گيرند: بر پايه جزييات يا بر اساس همبستگي. در تكنيك هاي ويژگي محور، ابتدا نقاط يا ويژگي ها مشخص مي شود و سپس محل نسبي آن روي انگشت نگاشت مي شود. زماني كه كيفيت پايين باشد استخراج دقيق نقاط ويژگي مشكل مي باشد.

راه حل غلبه بر مشكل كيفيت پايين نمونه ها استفاده از توابع پيش پردازش است كه با كمك آن، تيرگي و ابهام موجود در نمونه هاي تصاوير، كاهش يافته و وضوح تصاوير افزايش مي يابد. همچنين انجام عمل پيش فيلترينگ روي پشت زمينه نمونه ها، نقاط تيره و مبهم را به كمترين مقدار خود كاهش مي دهد. در كنار اين اقدام ها، قطعه بندي نمونه هاي اثر انگشت نيز به وسيله شناسايي ميزان ويژگي ها در محل مورد نظر انجام مي شود كه به آن ROI (روشي است كه در آن به جاي اين كه مجبور باشيم كل تصوير را پردازش كنيم فقط ناحيه به خصوصي را كه مد نظرمان است يا كانال به خصوصي را كه مي خواهيم بر روي آن كار كنيم، پردازش مي كنيم) مي گويند.
در اين روش، از يك وب كم يا سنسور ساده در ورودي استفاده مي شود كه فقط كافي است انگشت در چند سانتي متري عدسي دوربين يا سنسور نگه داشته شود. امروزه روش هاي ديگري هم براي بهبود كيفيت تصاوير گرفته شده وجود دارد كه مي توان از آن ها نيز استفاده كرد.

  • * تغيير در پايگاه داده زيست سنجی: اولين مرحله در سيستم هاي تشخيص بيومتريك، ذخيره نمونه هاي منحصر به فرد به منظور استفاده از آن ها در فرآيند تصديق هويت مي باشد. در اكثر سيستم ها يك پايگاه داده براي ذخيره اين نمونه ها در نظر گرفته مي شود. فرآيندي كه كاربر براي اولين بار در آن اقدام به ثبت اثر انگشت مي كند، فرآيند ثبت نام دارد.
  • * تغيير در استخراج كننده ويژگي ها: استخراج كننده ويژگي يكي از بخش هاي سيستم تشخيص زيست سنجی است كه ممكن است اين بخش توسط مهاجم مورد حمله قرار گرفته و كاركرد آن را تغيير يابد. مهاجم با ربودن تصاوير اثر انگشت از پايگاه داده، نمونه هاي تقلبي خود را جايگزين آن ها مي كند. در اين صورت، سيستم هنگام تشخيص نمونه ها، يك اثر انگشت معتبر را رد و يك اثر انگشت نامعتبر را تأييد مي كند.

يكي از روش هايي كه براي حفاظت نمونه ها از تقلب و جابه جايي وجود دارد استفاده از الگوريتم ها و كدهاي عددي به جاي مقايسه تصاوير، براي تحليل اطلاعات است يعني استفاده از نسخه تحريف شده سيگنال زيست سنجی يا بردار ويژگي است. همچنين واترماركينگ (واترماركينگ، استگانوگرافي يا نهان نگاري، دانش يا هنر پنهان كردن اطلاعات يا ارتباطات است به گونه اي كه يك پيام در بطن پيام ديگر مخفي مي شود. در اين صورت به پيامي كه قرار است مخفي شود، واترمارك و بهسيگنالي گفته مي شود) و پنهان سازي اطلاعات (Steganography ) از ديگر تكنيك هايي است كه براي افزايش امنيت تصاوير اثر انگشت موجود در پايگاه داده مورد استفاده قرار مي گيرد.

مشكلات عملي زيادي در سيستم هاي شناسايي اثر انگشت وجود دارد. مثلاً هر دفعه كه يك اثر انگشت گرفته مي شود، ممكن است به خاطر قابليت كشساني پوست، تحريف هايي در شكل و محل اثر انگشت ايجاد شود. علاوه بر اين، اطمينان بالا و پردازش بلادرنگ، فاكتورهاي مهم مورد نياز در سيستم خودكار شناسايي اثر انگشت هستند.

از ديگر روش هايي كه امروزه در فناوري زيست سنجی از آن استفاده مي شود انجام برخي از حركات يا رفتارهاي خاص بر روي تجهيزات جمع آوري كننده اطلاعات مي باشد. از نمونه هاي اين روش مي توان به دستگاه هايي اشاره كرد كه از كاربر مي خواهد تا با دست خويش، عمل خاصي را انجام داده يا شكل مشخصي را در صفحه ثبت كننده اطلاعات، ترسيم نمايد. اندازه گيري و ثبت ويژگي هايي همچون اندازه، طول، سرعت، شتاب، انحنا، ميزان فشار وارده، دامنه لرزش اعضاي حركتي بدن، درجه حرارت بدن و … و مقايسه آن ها با اطلاعات از قبل ثبت شده، از كاركردهاي اين دستگاه ها مي باشد. از مشكلات خاص اين روش نيز مي توان به عدم بهره گيري از آن ها در هنگام بيماري افراد در روش ايي كه نيازمند انجام حركات رفتاري خاص هستند يا آموختن بعضي از روش هاي اجرايي حركات و رفتارها اشاره نمود.

يكي ديگر از روش هاي زيست سنجی، تأييد هويت افراد بر اساس كف دست آن ها مي باشد. در اين روش، كف دست به صورت كامل بر روي دستگاه هاي جمع آوري كننده داده ها قرار گرفته و اطلاعات خاصي از آن استخراج مي شود. اين شيوه نيز با مشكلاتي مشابه روش زيست سنجشي اثر انگشت روبرو مي باشد كه مي توان با استفاده از درجه حرارت و رطوبت كف دست كاربر و همچنين شدت فشار آن بر روي صفحه دستگاه، صحت اطلاعات دريافتي را بررسي نمود.
هندسه دست نيز يكي ديگر از روش هاي مورد استفاده در فناوري زيست سنجی است كه مي تواند با مشكلات مربوط به ويژگي زيست سنجی كف دست مواجه گردد كه به كارگيري ويژگي هاي تشخيصي، مي تواند خطاهاي وارده را كاهش دهد.
استفاده از عنبيه چشم در تأييد هويت كاربران، يكي ديگر از روش هاي مورد استفاده در فناوري زيست سنجی مي باشد. مشكلاتي همچون نور كم محيط در هنگام تأييد عنبيه چشم مي تواند باعث تار بودن تصوير شده و در كاهش عملكرد اين روش تأثير بگذارد.
در روش تأييد هويت بر اساس تشخيص چهره كه از شيوه هاي ديگر فناوري زيست سنجی مي باشد افراد مي توانند تصويز يا ويديوهاي جعلي را در مقابل دوربين قرار داده و موجب عدم كارايي اين روش گردند.
نرم افزارهاي مورد استفاده در فناوري زيست سنجی نيز بايد علاوه بر سهولت كاربري و واسط گرافيكي پيشرفته، اثرهاي زيست سنجی جمع آوري شده را به صورت امن ذخيره كرده و قادر به گزارش هاي متنوع و همچنين ثبت خطاها و رويدادها باشد. تجهيزات و دستگاه هاي جمع آوري داده هاي زيست سنجی هم بايد داده هاي دريافتي را به صورت امن ارسال كرده و از روش هاي رمزنگاري قابل اطمينان در طول فرآيند انتقال داده ها استفاده نمايند. همچنين پايگاه هاي داده اي كه اطلاعات زيست سنجی در آن ذخيره مي گردد بايد اطلاعات را به صورت رمزگذاري شده نگهداري نموده و از تكنيك هاي ويژه اي همچون سايه زني و مخفي سازي داده ها بر روي تصاوير و يا الگوريتم هاي رمزنگاري پيشرفته، به منظور تأمين امنيت بيشتر و چلوگيري از تحريف داده ها استفاده نمايند.
امروزه وسايل و تجهيزات زيست سنجی خاصي براي انواع مختلفي از خدمات الكترونيك ابداع شده اند كه در آن ها، تصديق هويت با استفاده از يك عامل امنيتي هوشمند انجام مي شود كه اين عامل هوشمند داراي خاصيت تشخيص زنده بودن فرد است. لازم است كه اين عامل در فعاليت هاي زيست سنجی كه از راه دور انجام مي گيرند به هر فرد يك شناسه به همراه آدرس IP اختصاص دهد به گونه اي كه فرد ديگري قادر به استفاده از آن ها توسط رايانه ديگري نباشد.

پس از ثبت داده زيست سنجی توسط عامل هوشمند، براي اين كه اطمينان حاصل گردد نمونه هاي جمع آوري شده داراي كمترين مقدار تيرگي و نويز هستند، عمل پيش پردازش روي آن ها انجام مي گيرد. سپس بررسي زنده بودن نمونه ثبت شده توسط عامل هوشمند، اولين آزمايشي است كه روي نمونه انجام مي شود. اين كار، براي جلوگيري از به كارگيري روش هاي جعلي در تصديق هويت صورت مي گيرد. پس از عمليات مقداردهي اوليه، اين نمونه هاي جمع آوري شده با نمونه هاي موجود در پايگاه هاي داده سرورهاي زيست سنجی كه به صورت رمزشده ذخيره شده اند، تطبيق داده مي شود. اگر در هر لحظه از زمان، آزمايش هاي صورت پذيرفته با موفقيت همراه نباشد فوراً خدمات الكترونيك متوقف شده و نتيجه به ارايه كنندگان آن خدمات اطلاع داده خواهد شد. اين فرآيند در تمام مدت زمان ارايه خدمات الكترونيك انجام مي گيرد.

در پايان بهتر است يادآور شد كه به منظور اجراي امنيت كامل، تلفيق چند ويژگي متفاوت زيست سنجشي در قالب يك روش واحد، ضروري بوده و منجر به امنيت پايدار و اثربخشي بهتري براي سيستم هاي بهره گير از اين فناوري خواهد شد. معمول ترين و كاربردي ترين شيوه اي نيز كه در اين روش مورد استفاده قرار مي گيرد تلفيق اثر انگشت و تصوير چهره براي تأييد هويت كاربران مي باشد كه اگرچه هر كدام به تنهايي، يك ويژگي مطلوب به شمار نمي روند اما بهره گيري از آن ها به موازات هم، مي تواند منجر به اثربخشي و كارايي بالاتري در احراز هويت كاربران گردد.

منبع

تشخیص هویت زیست سنجی و بیومتریک قسمت 1
تشخیص هویت زیست سنجی و بیومتریک قسمت 2
تشخیص هویت زیست سنجی و بیومتریک قسمت 3
تشخیص هویت زیست سنجی و بیومتریک قسمت 4
تشخیص هویت زیست سنجی و بیومتریک قسمت 5

یادگیری با نظارت یا یادگیری تحت نظارت (Supervised learning) یکی از زیرمجموعه‌های یادگیری ماشینی است. با یک مثال عمومی وارد این بحث می‌شویم. یک میوه فروشی را در نظر بگیرید که تمام میوه ها را به صورت کاملاً جدا از هم مرتب کرده‌است و شما نوع میوه را کاملاً می‌دانید، یعنی زمانی که یک میوه را در دست می‌گیرید به نام نوشته شده در قفسهٔ آن نگاه می‌کنید و در میابید که مثلاً سیب است و اصطلاحاً می‌گویند تمام داده ها تگ گذاری شده هستند. به طبع فردی از قبل دستهٔ داده‌ها را مشخص کرده‌است. حال اگر با دید موجودی در حال یادگیری به ماجرا نگاه کنیم، انتظار می‌رود فرضاً مفهومی از سیب‌ها را یاد بگیرد و احتمالاً در آینده نیز اگر تصویری از سیب‌ها دید آن را تشخیص دهد.

این روش، یک روش عمومی در یادگیری ماشین است که در آن به یک سیستم، مجموعه ای از جفت‌های ورودی – خروجی ارائه شده و سیستم تلاش می‌کند تا تابعی از ورودی به خروجی را فرا گیرد. یادگیری تحت نظارت نیازمند تعدادی داده ورودی به منظور آموزش سیستم است. با این حال رده‌ای از مسائل وجود دارند که خروجی مناسب که یک سیستم یادگیری تحت نظارت نیازمند آن است، برای آن‌ها موجود نیست. این نوع از مسائل چندان قابل جوابگویی با استفاده از یادگیری تحت نظارت نیستند. یادگیری تقویتی مدلی برای مسائلی از این قبیل فراهم می‌آورد. در یادگیری تقویتی، سیستم تلاش می‌کند تا تقابلات خود با یک محیط پویا را از طریق آزمون و خطا بهینه نماید. یادگیری تقویتی مسئله‌ای است که یک عامل که می‌بایست رفتار خود را از طریق تعاملات آزمون و خطا با یک محیط پویا فرا گیرد، با آن مواجه است. در یادگیری تقویتی هیچ نوع زوج ورودی- خروجی ارائه نمی‌شود. به جای آن، پس از اتخاذ یک عمل، حالت بعدی و پاداش بلافصل به عامل ارائه می‌شود. هدف اولیه برنامه‌ریزی عامل‌ها با استفاده از تنبیه و تشویق است بدون آنکه ذکری از چگونگی انجام وظیفه آن‌ها شود.

یک مجموعه از مثال‌های یادگیری وجود دارد بازای هر ورودی، مقدار خروجی یا تابع مربوطه نیز مشخص است. هدف سیستم یادگیر بدست آوردن فرضیه‌ای است که تابع یا رابطه بین ورودی یا خروجی را حدس بزند به این روش یادگیری با نظارت گفته می‌شود.

مثال‌های زیادی در یادگیری ماشینی وجود دارند که در دسته یادگیری با نظارت میگنجند، از جمله می‌توان به درخت تصمیم‌گیری، آدابوست، ماشین بردار پشتیبانی، دسته‌بندی‌کننده بیز ساده، رگرسیون خطی، رگرسیون لجستیک، گرادیان تقویتی، شبکه‌های عصبی و بسیاری مثال‌های دیگر اشاره کرد.

منبع


 

در این قسمت می خواهیم در رابطه با یادگیری های نظارتی و بی نظارت توضیح دادیم.

  • supervised learning = یادگیری با نظارت
  • unsupervised learning = یادگیری بدون نظارت

پیش از این یادگیری با نظارت را اینگونه تعریف کردیم:

این مدل ماشین با استفاده از داده های برچسب گذاری شده و داشتن جواب های درست یاد می گیرند که در لاتین به آن Supervised learning می گویند.

مثال های مختلفی از یادگیری ماشین با نظارت:

یکی از مثال های مرسوم در یادگیری با نظارت تشخیص و فیلتر کردن اسپم ها میان پیام ها است. ابتدا تمامی داده ها به دو کلاس سالم و اسپم تقسیم می شوند، سپس ماشین آن ها را با مثال های موجود می آموزد در نهایت از او امتحان گرفته می شود و امتحان به این منظور تلقی می شود که شما ایمیل جدیدی که تا به حال ندیده است را به آن بدهید، سپس آن تشخیص دهد که سالم یا اسپم است.

نمونه دیگری از این دست یادگیری می توان زد پیشبینی مقدار عددی می باشد، به عنوان مثال قیمت یک ماشین با مجموعه ویژگی هایی مثل (مسافت طی شده، برند، سن ماشین و …). از این دست مثال ها با عنوان regression نامیده می شوند. (در پست های بعدی حتما یک مثال با regression توسط زبان پایتون حل می کنیم.)

برای آموزش سیستم، شما باید تعداد زیادی نمونه یا به عبارتی داده، در اختیار سیستم بگذارید که شامل label و predictor ها باشد.

نکته: دقت کنید بعضی از الگوریتم های regression را می توانند در classification استفاده شوند و برعکس.

برای مثال، رگرسیون منطقی (Logistic Regression) معمولا برای طبقه بندی استفاده می شود، زیرا می تواند یک مقدار را که مربوط به احتمال متعلق به یک کلاس داده شده است، تولید کند.

 

منبع


یادگیری  با نظارت چیست؟

در یادگیری با نظارت کار با ایمپورت کردن مجموعه داده‌های شامل ویژگی‌های آموزش (خصیصه‌های آموزش | training attributes) و ویژگی‌های هدف (خصیصه‌های هدف | target attributes) آغاز می‌شود. الگوریتم یادگیری نظارت شده رابطه بین مثال‌های آموزش و متغیرهای هدف مختص آن‌ها را به دست می‌آورد و آن رابطه یاد گرفته شده را برای دسته‌بندی ورودی‌های کاملا جدید مورد استفاده قرار می‌دهد (بدون هدف‌ها). برای نمایش اینکه یادگیری نظارت شده چگونه کار می‌کند، یک مثال از پیش‌بینی نمرات دانش‌آموزان برپایه ساعات مطالعه آن‌ها ارائه می‌شود. از منظر ریاضی:

Y = f(X)+ C

که در آن:

  • F رابطه بین نمرات و تعداد ساعاتی است که دانش‌آموزان به منظور آماده شدن برای امتحانات به مطالعه می‌پردازند.
  • X ورودی است (تعداد ساعاتی که دانش‌آموز خود را آماده می‌کند).
  • Y خروجی است (نمراتی که دانش‌آموزان در آزمون کسب کرده‌اند).
  • C یک خطای تصادفی است.

هدف نهایی یادگیری نظارت شده پیش‌بینی Y با حداکثر دقت برای ورودی جدید داده شده X است. چندین راه برای پیاده‌سازی یادگیری نظارت شده وجود دارد. برخی از متداول‌ترین رویکردها در ادامه مورد بررسی قرار می‌گیرند. برپایه مجموعه داده موجود، مساله یادگیری ماشین در دو نوع «دسته‌بندی» (Classification) و «رگرسیون» (Regression) قرار می‌گیرد. اگر داده‌های موجود دارای مقادیر ورودی (آموزش) و خروجی (هدف) باشند، مساله از نوع دسته‌بندی است. اگر مجموعه داده دارای «مقادیر عددی پیوسته» (continuous numerical values) بدون هرگونه برچسب هدفی باشد، مساله از نوع رگرسیون محسوب می‌شود.


Classification: Has the output label. Is it a Cat or Dog?
Regression: How much will the house sell for?

منبع


یادگیری نظارت شده: زمانی رخ می دهد که شما با استفاده از داده هایی که به خوبی برچسب گذاری شده اند به یک ماشین آموزش می دهید؛ به بیان دیگر در این نوع یادگیری، داده ها از قبل با پاسخ های درست (نتیجه) برچسب گذاری شده اند. برای نمونه به ماشین عکسی از حرف A را نشان می دهید. سپس پرچم ایران که سه رنگ دارد را به آن نشان می دهید. یاد می دهید که یکی از رنگ ها قرمز است و یکی سبز و دیگری سفید. هرچه این مجموعه اطلاعاتی بزرگ تر باشد ماشین هم بیشتر می تواند در مورد موضوع یاد بگیرد.

پس از آنکه آموزش دادن به ماشین به اتمام رسید، داده هایی در اختیارش قرار داده می شوند که کاملا تازگی دارند و قبلا آنها را دریافت نکرده است. سپس الگوریتم یادگیری با استفاده از تجربیات قبلی خود آن اطلاعات را تحلیل می کند. مثلا حرف A را تشخیص می دهد و یا رنگ قرمز را مشخص می کند.

 

منبع


یادگیری نظارتی (Supervised ML)

در روش یادگیری با نظارت، از داده‌های با برچسب‌گذاری برای آموزش الگوریتم استفاده می‌کنیم. داده‌های دارای برچسب به این معنی است که داده به همراه نتیجه و پاسخ موردنظر آن دردسترس است. برای نمونه اگر ما بخواهیم به رایانه آموزش دهیم که تصویر سگ را از گربه تشخیص دهد، داده‌ها را به صورت برچسب‌گذاری شده برای آموزش استفاده می‌کنیم. به الگوریتم آموزش داده می‌شود که چگونه تصویر سگ و گربه را طبقه‌بندی کند. پس از آموزش، الگوریتم می‌تواند داده‌های جدید بدون برچسب را طبقه‌بندی کند تا مشخص کند تصویر جدید مربوط به سگ است یا گربه. یادگیری ماشین با نظارت برای مسائل پیچیده عملکرد بهتری خواهد داشت.

یکی از کاربردهای یادگیری با نظارت، تشخیص تصاویر و حروف است. نوشتن حرف A یا عدد ۱ برای هر فرد با دیگری متفاوت است. الگوریتم با آموزش یافتن توسط مجموعه داده‌های دارای برچسب از انواع دست‌خط حرف A و یا عدد ۱، الگوهای حروف و اعداد را یاد می‌گیرد. امروزه رایانه‌ها در تشخیص الگوهای دست خط از انسان دقیق‌تر و قدتمندتر هستند.

در ادامه تعدادی از الگوریتم‌ها که در یادگیری نظارتی مورد استفاده قرار می‌گیرد شرح داده می‌شود.

درخت تصمیم‌ (ِDecision Tree)

ساختار درخت تصمیم در یادگیری ماشین، یک مدل پیش بینی کننده می‌باشد که حقایق مشاهده شده در مورد یک پدیده را به استنتاج هایی در مورد  هدف آن پدیده پیوند می‌دهد. درخت تصمیم گیری به عنوان یک روش به شما اجازه خواهد داد مسائل را بصورت سیستماتیک در نظر گرفته و بتوانید نتیجه گیری منطقی از آن بگیرید.

درخت تصمیم

 

دسته‌بندی کننده بیز (Naive Bayes classifier)

دسته‌بندی‌کننده بیز  در یادگیری ماشین به گروهی از دسته‌بندی‌کننده‌های ساده بر پایه احتمالات گفته می‌شود که با متغیرهای تصادفی مستقل مفروض میان حالت‌های مختلف و براساس قضیه بیز کاربردی است. به‌طور ساده روش بیز روشی برای دسته‌بندی پدیده‌ها، بر پایه احتمال وقوع یا عدم وقوع یک پدیده‌است.

دسته بندی کننده بیز

کمینه مربعات

در علم آمار، حداقل مربعات معمولی یا کمینه مربعات معمولی روشی است برای برآورد پارامترهای مجهول در مدل رگرسیون خطی از طریق کمینه کردن اختلاف بین متغیرهای جواب مشاهده شده در مجموعه داده است. این روش در اقتصاد، علوم سیاسی و مهندسی برق و هوش مصنوعی کاربرد فراوان دارد.

کمینه مربعات

 

رگرسیون لجستیک (logistic regression)

زمانی که متغیر وابسته ی ما دو وجهی (دو سطحی مانند جنسیت، بیماری یا عدم بیماری) است و می‌خواهیم از طریق ترکیبی از توابع منطقی دست به پیش بینی بزنیم باید از رگرسیون لجستیک استفاده کنیم. اندازه گیری میزان موفقیت یک کمپین انتخاباتی، پیش بینی فروش یک محصول یا پیش بینی وقوع زلزله در یک شهر، چند مثال از کاربردهای رگرسیون لجستیک است.

رگرسیون لجستیک

 

ماشین بردار پشتیبانی (Support vector machines )

یکی از روش‌های یادگیری نظارتی است که از آن برای طبقه‌بندی و رگرسیون استفاده می‌کنند. مبنای کاری دسته‌بندی کننده SVM دسته‌بندی خطی داده‌ها است و در تقسیم خطی داده‌ها سعی می‌کنیم خطی را انتخاب کنیم که حاشیه اطمینان بیشتری داشته باشد. از طریق SVM میتوان مسائل بزرگ و پیچیده‌ای از قبیل شناسایی تمایز انسان و بات‌ها در سایت‌ها، نمایش تبلیغات مورد علاقه کاربر، شناسایی جنسیت افراد در عکس‌ها و… را حل کرد.

ماشین بردار پشتیبان

منبع


 

و در پایان یک شمای کلی از انواع یادگیری ماشین  وتقسیم بندی های آنها جهت تفهیم بیشتر یادآور می شویم:

 

انواع یادگیری ماشین

 

 

 

 

 

هوش مصنوعی جدید وحشت آور سامسونگ می تواند Deepfakeهای سخنگو از یک تصویر تولید کند.

مشکل deepfake ما در مورد بدتر شدن است: مهندسان سامسونگ در حال حاضر سرهای سخنگوی واقع گرایانه ای را توسعه داده اند که می تواند از یک تصویر تولید شود، بنابراین AI حتی می تواند کلمات را در دهان مونا لیزا قرار دهد.

الگوریتم های جدید که توسط یک تیم از مرکز AI سامسونگ و موسسه علوم و فناوری Skolkovo توسعه یافته است، هر دو در مسکو به بهترین وجه با انواع تصاویر نمونه گرفته شده در زوایای مختلف کار می کنند، اما آنها می توانند تنها با یک تصویر برای کار کردن، حتی یک نقاشی، کاملا موثر باشند.

 

 

 

مدل جدید نه تنها می تواند از یک پایگاه داده اولیه کوچکتر از تصاویر استفاده کند، هم چنین می تواند طبق نظر محققان پشت آن، فیلم های کامپیوتری را در مدت کوتاه تری تولید کند.

و در حالی که همه انواع برنامه های جالب وجود دارد که از تکنولوژی می توان برای آن استفاده کرد – مانند قرار دادن یک نسخه فوق واقع گرایانه از خودتان در واقعیت مجازی – این نگرانی وجود دارد که فیلم های ویدئویی کاملاً تقلبی را می توان از یک تصویر کوچک تولید کرد.

محققان در مقاله خود نوشتند: “چنین توانایی دارای کاربردهای عملی برای تلوزیون است،، از جمله ویدئو کنفرانس و بازی های چند نفره، و همچنین صنعت جلوه های ویژه.”

deepfake

سیستم با آموزش خود در مجموعه ای از ویژگی های چهره برجسته کار می کند که پس از آن می تواند دستکاری شود. بسیاری از آموزش ها بر روی یک پایگاه داده قابل دسترس عمومی از بیش از 7000 تصویر از افراد مشهور، به نام VoxCeleb، و همچنین تعداد زیادی از فیلم ها از صحبت کردن مردم با دوربین انجام شده است.

از آنجا که این رویکرد جدید کار گذشته را با آموزش دادن به شبکه عصبی در مورد چگونگی تبدیل ویژگی های چهره برجسته به فیلم های متحرک با نگاه واقع گرایانه، بیش از چندین بار، بهبود می دهد. سپس این دانش می تواند بر روی چند عکس (یا فقط یک عکس) از کسی که AI قبل از آن هرگز ندیده است، مستقر شود.

 

deepfake new

 

این سیستم از یک شبکه عصبی کانولوشن، یک نوع شبکه عصبی بر اساس فرآیندهای بیولوژیکی در قشر بینایی حیوان استفاده می کند. این منحصراً در پردازش پشته های تصاویر و شناخت آنچه در آنها متخصص است – “convolution” اساساً بخش هایی از تصاویر را شناسایی و استخراج می کند (آن همچنین برای نمونه، در جستجوهای تصویری در وب و تکنولوژی خودرو خود راننده استفاده می شود).

همانند سایر ابزارهای تولید چهره هوش مصنوعی گرا که ما شاهد آن هستیم، آخرین مرحله در این فرآیند برای “واقع گرایی کامل” مورد بررسی قرار می گیرد – از لحاظ فنی یک مدل مولد رقابتی. هر فریمهایی که بیش از حد عجیب و غریب و غیر طبیعی هستند، دوباره برش داده و ارائه میشوند، ویدئو نهایی با کیفیت بهتر را به نمایش میگذارند.

این تکنیک موفق به غلبه بر دو مشکل بزرگ در سرهای سخنگوی تولید شده مصنوعی شده است: پیچیدگی سرها (با دهان ها، مو، چشم ها و غیره) و توانایی ما در به راحتی کشف کردن یک سر جعلی (به عنوان مثال، چهره های شخصیتی در میان سخت ترین عناصر برای طراحان بازی ویدیویی برای درست کردن هستند).

سیستم و دیگران مانند آن، برای بهتر شدن محدود می شوند به طوریکه الگوریتم ها بهبود یابند و مدل های آموزشی موثرتر شوند – و این بدان معنی است که مجموعه ای کامل از سوالات در مورد اینکه آیا می توانید به آنچه که می بینید یا می شنوید اعتماد کنید، اگر در فرم دیجیتال باشد.

از طرف دیگر، ستاره های تلویزیون و فیلم مورد علاقه شما هرگز نباید رشد کنند و بمیرند – AI شبیه به این است که به زودی به اندازه کافی هوشمند خواهد بود تا نمایش های کاملا واقعی را فقط از چند عکس تولید کند و همچنین در زمان ذخیره.

 

 

چکیده

پردازش اطلاعات چند کاناله در رنج های متفاوتی از کانال اطلاعات است که در آن پردازش اطلاعات دارای زمان زیاد و پیچیدکی فضایی بالایی بعلت تنوع و گستردگی داده ها می باشد. در این راستا بیشتر رویکردهای کلاسیک از فیلترینگ و روشهای کلاسیک استفاده می کنند. برخی از این روشها مدل تصادفی مارکوف ، فیلترینگ بردار جهت دار و مدل های ترکیبی آماری شبیه گوسین و دیریکله هستند . رویکردهای غیر کلاسیک  شامل عصبی،فازی و ژنتیک می شوند.در این مقاله رویکر دهای نامبرده شده را برای ارتقای تصاویر رنگی و قطعه بندی بهتر آنها شرح می دهیم.

کلمات کلیدی: ارتقای تصاویر رنگی ، قطعه بندی تصاویر رنگی ، رویکردهای غیر کلاسیک، رویکرهای غیر کلاسیک

مقدمه

پردازش اطلاعات چند کاناله یکی از مفروضات مهم برای ارزیابی فیلدهای نمایش از راه دور  GIS، تصویر برداری بیو مدیکال ، مدیریت دادهای چند طیفی ، بازیابی و تحلیل ویژگیها ی اشیاء از قبیل رنج های مختلف کانال اطلاعات که بطور اساسی پیچیده هستند. و این پیچیدگی بدلیل گسترده گی داده های ارسالی و اصلی آن می باشد . به بیانی ساده تر پردازش و قطعه بندی رنگی تصاویر به صورت مثالهای کلاسیک از پردازش اطلاعات چند مجرایی هستند. یک چالش ابتدایی در پردازش تصاویر تنوع و گستردگی از شدت رنگهای گاموت با پردازش مشخصه های چند طیفی از اجزای رنگی متفاوت آنها می باشد.

نسبت ها ی محاسباتی وابسته به اجزای رنگها ، همبستگی ورودی و نمایش مشخصه های غیر خطی می باشد.

گام اصلی در پردازش تصاویر دیجیتالی 1-پیش پردازش داده ها برای آماده سازی داده ها برای ارتقای کنتراست ، کاهش نویز و یا فیلترینگ است. 2- استخراج ویژگیها برای بازیابی اطلاعات غیر زائد و با ارزش از یک تصویر.

این عملیات هدفی برای بدست آوردن زمان بهینه و کاهش نمونه داده هاست که توسط کشف، تمرکز و معین کردن موقعیت ها و جایگاهی و تطبیقی از اشیاء است. اهداف بسیاری از الگوریتم های موجود اشیاء مورد اشاره هستند که هر از چند گاهی قابلیت استنتاج را پیدا می کنند .

به طور کلی مشخصه ها و بهینه سازی های یک الگوریتم توسط دامنه ای از داده های ورودی که قابلیت پردازش را دارند معین می شوند. دامنه داده معمولی شامل پیکسل ها، ویژگیهای محلی و لبه های تصاویر، اشیاء ادغام شدنی و مقدار ناچیزی از نامها می شوند.

دامنه داده خروجی به طور ثابت شامل قطعات تصویر به طور همگن، لبه ها  پیدا شده روی اشیاء خاص از ناحیه های قطعات و اشیاء با اندازه ها، اشکال ، رنگ ها و اطلاعات متنی متفاوت می باشند.

مدل های رنگی متفاوت قابل فهم، شرط لازم برای پردازش تصاویر رنگی است. در این مقاله تمایز ها و زیان های قابلیت های فضاهای رنگی موجود را بررسی می کنیم. متغیرهای استاندارد فضای رنگی RGB مینمم پیچدگی فضای رنگی را استخراج می کنند و برای نمایش رنگ بکار می روند. کارایی هر یک از الگوریتم های قطعه بندی تصاویر هم از کلاسیک و غیر کلاسیک  را می توان با چندین رویکرد غیر نظارتی تشخیص داد.

به طور پیش فرض چند اندازه برای نمایش حالتها انتخاب می کنند مانند E که برای نمایش آنتروپی استفاده می شود. اندازه های مفید تجربی برای انعکاس قابلیت های قطعه بندی استفاده می شوند. اندازه های با مقادیر پائین قابلیت های بهتری از قطعه بندی را بدست می آورند.

رویکردهای کلاسیک در قطعه بندی و پردازش تصاویر رنگی

تکنیک های فیلترینگ برای حذف نویز و ارتقا لبه ها در سالهای اخیر به یک مسئله مهم و معروف تبدیل شده است. فلیتر بردار جهت دار (VDF) با در نظر گرفتن مقادیر سیگنال نقش مهمی در پردازش تصاویر عهده دار است. پردازش اندازه و جهت سیگنال در این کلاس از فیلتر های مستقل انجام می شود. فیلتر های چندگانه ارتقا لبه بر اساس بردار میانگین برای ارتقاء لبه های خفیف در تصاویر رنگی ارائه کردند. در این روش از سه زیر فیلتر (sub filter) استفاده می شود و سر انجام خروجی این زیر فیلتر ها با بردار میانگین مقایسه می شودو یک روش دیگر با توجه به نویز برای اطلاعات چندگانه فیلتر های نزدیکترین  همسایگی سازگار است. این فیلتر از ضرائب اطلاعات مستقل براساس یک روش اندازه گیری فاصله جدید که شامل بردار هاوی (جهت) فیلتر واندازه بردار فیلتر می باشد بهره می برد.

یک چهارچوب کاملا متفاوت را برای فیلتره ای رنگی ارائه می کنیم . این روش براساس رمز نگاری تصاویر رنگی و غیر رنگی کار می کنند . تا به حال چند رزولوشن بر اساس نظریه گراف ارائه شده است. این تکنیک بر اساس ویژگی و شباهت و ارتباط بین نواحی مشابه و ارتباط بین نواحی همسایه استفاده می کند و در نهایت برای اشیاء برای قطعه بندی ایده ال نواحی گروه بندی می شوند. ما می توانیم از مسائل خطی بجای مقادیر ویژه در مسائل قطعه بندی گراف استفاده کنیم . الگوریتم آنالیز میانگین شیفت دهی برای تخمین دقیق رنگ مرکز کلاسترهای فضای رنگ استفاده می کند. می توان همین روش را با استفاده از روش های پارتیشن بندی توسعه داد.

مدل های (MRF) برای مدل کردن وآنالیز عکس های چند طیفی استفاده می شود. چند جایگزین برای MRF پیشنهاد می شود تا پیچدگی زمانی آن را کاهش دهند . الگوریتم EM برای تخمین پارامترهای مدل های مخفی مارکوف برای کاهش وابستگی ساختاری در این روش استفاده می شود.  می توان این الگوریتم را برای تخمین پارمترهای مدل دوباره دسته بندی کرد. این تهمین از فاکتور جریمه برای داده های مستقل برای داده های مستقل برای ماکزیمم کردن احتمال کلی مجموعه داده ها و در نتیجه کاهش مرجع محاسبات استفاده می کنند.

چندین مدل ترکیبی آماری برای تخمین مناسب از توزیع ساختار عکس ارئه می شود. به عنوان مثال از مدل ترکیبی گوسین و مدل ترکیبی دیریکله می توان نام برد . مدل ترکیبی گوسین بدلیل لینکه خواص مشابهی دارد می تواند با توزیع داده ها بوسیله بردار میانگین  و ماتریس کواریانس ارائه شود . برای پیدا کردن راه حل  ماکزیمم  احتمال کلی برای قطعه بندی با استفاده از هسته جداگانه از این روش استفاده کردند. اگر چه این روش یک ساختار غیر گوسی و متقارن  را برای توزیع داده ها پیدا می کند . در این مسئله توزیع دیریکله همانند توزیع های تغییر یافته چند متغیره بتا می تواند به طور دقیق داده ها را انتخاب کند . از این مدل در تخمین هیستوگرام ها، مدل هاهی چند پردازشی تصویر و… استفاده می کنند.

رویکردها دیگر از پردازش و قطعه بندی تصاویر رنگی

بیشتر رویکردهای کلاسیک نیاز به دانش اولیه از داده ها ی تصویر برای پردازش تصویر و قطعه بندی آن و توزیع شدت های رنگ  اصلی و پارامترهای عملیاتی تصاویر دارند. در رویکردهای غیر کلاسیک که شامل  عصبی ،فازی، ژنتیک و wavelet می شوند نیازی به توزیع ها و پارمترهای عملیاتی ندارند. در این قسمت انواع این روشها را شرح می دهیم:

الف- روش های مبتنی بر شبکه های عصبی

در این روش از ساختار شبکه ی عصبی چند سطحی CNN برای پردازش تصاویر رنگی در مدل های رنگی RGB استفاده می شود. در این روش رنگ های اولیه یک سطح منحصر به فرد CNN می باشد که برای پردازش موازی بکار می رود. اخیرا ساختار CNN چند سطحی بر ای تصاویر رنگی در حال بررسی و استفاده می باشد.

از یادگیری رقابتی CL برای خوشه های رنگی مبتنی بر کمترین مجموع مربعات معیارها بکار گیری می شود.

Clهمگن  محلی برای خوشه بندی رنگی بهینه است. در مقایسه کارایی CLبا الگوریتم های خوشه بندی موجود شبیه CMA ,GCMA ,HCL می توان گفت که دو  روش GCMA ,HCL در مقابل شرط ابتدایی حساسیتی را از خود نشان نمی دهند نتایج GCMA اکثر مواقع بهینه است ولی دارای هزینه محاسباتی بالایی می باشد در مقابل HCL دارای هزینه محاسباتی کم می باشد ولی بهینه نیست. در نتیجه در خوشه بندی سریع از CL برای خوشه بندی داده ها استفاده می شود.

Som در بسیاری از موارد استفاده می شود در دامنه نظر به اینکه می تواند بازیابی کند محتوای رنگی برجسته را از تصاویر . به طور کلی از چندین شبکه som برای خوشه بندی مبتنی بر رنگ و ویژگیهای فضایی از پیکسل های تصاویر استفاده می شود. خروجی خوشه بندی، یک رویه مطلوب از قطعه بندی تصویر است.  Som تولید کرد نتایج خوشه بندی اولیه را مبتنی بر آموزش مجموعه ها از بردار 5 بعدی (R,G,B,x,y). تصاویر قطعاتی که توسط الحاق بلوکهای پراکنده و حذف پیکسل های ایزوله شده بوجود آمده اند. در یک مدل چند سطحی سازماندهی شبکه های عصبی (PSONN) بهینه است در استخراج رنگ های اشیاء از نویزهای رنگی تصاویر. بکارگیری معماری (PSONN) برای قطعه بندی رنگ ها  حقیقی تصاویر استفاده می شوند برای  چندین سطح از تابع های فعال سازی  مشخصه های تصاویر  توسط پارامترهای آستانه گیری ثابت و یکسان .

ب- رویکرد های مبتنی بر منطق فازی

تئوری مجموعه فازی و منطق فازی بکار گیری می شود به صورت دستی برای مقادیر وسیع از آشکار سازی خطای تخمینی در شدت گاموت تصاویر رنگی . الگوریتم FCM  یک روش جدید برای نشان دادن مرزهای مبهم بین خوشه ها می باشد.

الگوریتم  قطعه بندی تصاویر تکرار شونده در منطق فازی توسعه پیدا کرد . فضای رنگی  HSV مبتنی بر رویکرد فازی برای شناسایی رنگ ها اشیا در پشت زمینه های پیچیده بکارگیری شد که شامل روشنایی های متفاوت  می با شد. یک رویکرد دینامیکی فازی مبتنی بر خواص پیکسا های تصویر وجود دارد. توطعه پیدا کرد شبکه عصبی min-max بر پایه تکنیک های قعه بندی تصاویر (FMMSIS) برای کشف تصاویر مصنوعی. روش ارائه شده برای پیدا کردن مرزهای مینیمم مربعی (MBR) برای نمایش اشیاء در تصاویر بکار می رود.برچسب عصب فازی یک نمونه قابل توجیه مبتنی بر بردار تدریجی، الگوریتم  عصب گازی در جهت نماهای خوشه بندی است.

سیستم های فازی عصبی مبتنی بر یک نوع جدید از شبکه های عصبی مصنوعی هستند که  شبکه عصبی افزاینده وزن دار نامیده می شود (WINN). این سیستم ها  در سه گام عمل میکند: در ابتدا مجموعه داده های ورودی وزن دهی می شوند در شبکه . انعکاس پیدا می کنند و  شامل کاهش دهنده ها می شود .

در گام بعدی از نتایج وزن های اتصالات شبکه  برای رویه ی آب پخشان در مسائل تک بعدی استفاده می شود.تعدادی از جداکننده های اتصالات وزن دار زیر شبکه ها خوشه هایی را با یک زیر شبکه برای هر خوشه  بدست می آورد. در هر صورت همه ی گره های زیر شبکه دارای برچسب هستند. در نهایت نتایج خوشه ها بر روی مجموعه داده های مورد استفاده ورودی طبقه بنده های مجاور نگاشت می شود.رویکردها ی کاهش حافظه و  محاسباتی دارای data setهای بزرگی هستند.

ج- رویکردهای مبتنی بر الگوریتم ژنتیک

الگوریتم ژنتیک برای بهینه سازی پارامترهای ورودی در الگوریتم های قطعه بندی موجود مورد استفاده قرار می گیرد طبقه بندی کاربردهای الگوریتم ژنتیک در دو کلاس مهم برای قطعه بندی تصاویر استفاده می شوند:

 1) کاربرد پارامترهای انتخابی قطعه بندی برای استخراج قطعات خروجی

2) کاربرد پیکسل های سطحی قطعه بندی برای استخراج برچسب نواحی

روش های قطعه بندی موجود که نیاز به پارامترهای بهینه در طبقه بندی نخست دارند. الگوریتم ژنتیک برای وفق دادن 4 پارامتر ازالگوریتم قطعه بندی فونیکس استفاده می کند. الگوریتم ژنتیک در تکنیک های قطعه بندی غیر نظارتی راکه آستانه گیری چندگذر گاهی دارد را برای الگوریتم های متفاوت دسته بندی می کند. که این روش برای قطعه بندی اشیاء سه بعدی و دو بعدی مورد استفاده قرار می گیرد.در قطعه بندی سطوح پیکسل دار، الگوریتم ژنتیک را برای پیداکردن برچسب نواحی  مشخصه های پیکسل ها استفاده می کند.

د- wavelet

تحلیل چند کیفیتی (MRA)  برای نمایش سیگنالها و پردازش کیفیت نمایش سیگنالهای تقسیم کننده کیفیت وضوح و فضای مقیاس دهی استفده می شود. و معمولا برای کاهش ابعاد تصویر بکار گرفته می شود . تبدیل wavelet یک ابزار بهینه برای تخمین، فشرده سازی ،حذف نویز و پیدا کردن لبه ها است .می توان از این روش برای قطعه بندی تصاویر متنی نیز استفده نمود. ساختار wavelet بهینه است برای ساختارهای طیفی از داده های ورودی که اغلب برای استخراج ویزگی های تصاویر مورد استفاده قرار می گیرند.

نتیجه گیری

در این مقاله چندین الگوریتم مهم برای پیش پردازش و قطعه بندی تصاویر رنگی مورد بررسی قرار گرفت. روش های کلاسیک برای پردازش تصاویررنگی که دارای رنج تکنیک های فیلترینگ و مدل های آمار ی باشند مناسب هستند. روش های غیر کلاسیک مانند تکنیک های فازی ،عصبی ،ژنتیک وویولت تجدید پذیر هستند . کارایی این روش ها برای فاکتورهای گوناگون روی دادهای توزیع پذیر و پارامترهای عملیاتی و محیهای عملیاتی مورد بررسی قرار گرفتند.

نتیجه کلی که می توان از این مقاله گرفت این است که رنگ ها قابلیت آستانه گیری در قطعه بندی را دارند.