ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 4 از 4
  1. #1
    2010/10/10
    92
    1

    اجرای کد meanshift

    سلام
    http://www.mathworks.es/matlabcentral/fileexchange/35520-mean-shift-video-tracking?download=true
    من کد meanshift رو گرفتم اما توی اجراش مشکل زیر رو دارم

    gui.m رو run می کنم فایل ویدیویی رو هم انتخاب می کنم اما موقع انتخاب select target خطای زیر رو میده:
    کد:
    ??? Error: File: Select_patch.m Line: 14 Column: 38
    Unexpected MATLAB operator.
    
    Error in ==> GUI>Select_Target_Callback at 377
    [handles.T,handles.x0,handles.y0,handles.H,handles.W] = ... Error in ==> gui_mainfcn at 96 feval(varargin{:}); Error in ==> GUI at 49 gui_mainfcn(gui_State, varargin{:}); ??? Error while evaluating uicontrol Callback
    انما الحیوة عقیدة و جهاد
  2. #2
    2011/10/09
    41
    1

    پاسخ : اجراي کد meanshift

    سلام
    اين برنامه ي ساده ي رديابي به روش meanshift هست
    اين برنامه بخشي از يک برنامه ي بزرگتر هست که توسط Jifeng Ning, College of Information Engineering, Northwest A&F نوشته شده
    بنده فقط اونو جدا کردم و بطور ساده تر بعضي قسمت ها رو بازنويسي کردم و يا با دستورات جديدتر MATLAB جايگزين کردم


    Main

    کد:
    %% Clear Memory & Command Window
    clc
    clear all
    close all
    %% Initialize
    OBJ    = mmreader('test.avi');       % Select Video File (Frames, video data)
    numberofframes = get(OBJ,'numberOfFrames');  % Total Frame Numbers   
    startFrm  = 30;                % start frame
    endFrm   = 150;               % end frame
    CL     = zeros(endFrm-startFrm+1,2);    % Centroid Location
    minDist  = 0.1;               % convergence threshold of mean shift       
    maxIterNum = 15;                % maximal iteration number
    incre   = 7;                % increase size of candidate window
    redBins  = 16;                % default color quant sheme (fixed in this demo)
    greenBins = 16;
    blueBins  = 16;
    %% Select Object
    frame00  = read(OBJ,startFrm);        % define the target in startFrm;
    figure() 
    imshow(frame00)                % Show Image and Wait Till Get Rect
    IR     = round(getrect(figure(1)));    % Coded RectFrame [xmin,ymin,width,height]
    cmin    = IR(1);
    cmax    = IR(1)+IR(3);
    rmin    = IR(2);
    rmax    = IR(2)+IR(4);
    center(1,1)= floor((rmin+rmax+1)/2);      % center of target window
    center(1,2)= floor((cmin+cmax+1)/2);              
    w_halfsize(1) = round(abs(rmax - rmin)/2);   % half window 
    w_halfsize(2) = round(abs(cmax - cmin)/2); 
    w_halfsize_bg = 2*w_halfsize;         % size of background winodw
    %% Object Model
    q_u=rgbPDF(double(frame00),center,w_halfsize); % target model(histogram)
    height  = size(frame00,1);          % height of each frame
    width   = size(frame00,2);          % width of each frame
    %% Start Tracking
    for i = startFrm:endFrm            % number of frames    
      if i==startFrm               % draw initial target region in first frame
      framei=frame00;
      elseif i>1  
      framei=read(OBJ,i);
      center=rgbTracking(double(framei),center,w_halfsize,q_u,minDist,maxIterNum,incre); % tracking target with mean shift
      end 
      rmin=center(1)-w_halfsize(1);  
      rmax=center(1)+w_halfsize(1);  
      cmin=center(2)-w_halfsize(2);
      cmax=center(2)+w_halfsize(2);
      CL(i-startFrm+1,:)=[center(2),center(1)];  
      %% Prevent From Exceed Image
      if rmin<2; rmin=2; end  
      if rmax>height-1; rmax=height-1; end  
      if cmin<2; cmin=2; end  
      if cmax>width-1; cmax=width-1; end
      %% Show  
      imshow(framei)
      title([num2str(i-startFrm+1),'/',num2str(endFrm-startFrm+1)])
      hold on
      rectangle('Position',[cmin,rmin,cmax-cmin,rmax-rmin],'LineWidth',3,'EdgeColor','g')
    %   plot(CL(1:i-startFrm+1,1),CL(1:i-startFrm+1,2),'g','LineWidth',2)
      plot(center(2),center(1),'g*')
      hold off
      pause(0.1)
      
    end
    %% Record
    inf{1} = CL;                  % Centroid Locations
    tmsz  = [IR(3),IR(4)]; inf{2} = tmsz;     % Template Size
    save output.mat inf
    rgbPDF

    کد:
    function q_u=rgbPDF(image,center,w_halfsize)
    
    sum_q=0;
    histo=zeros(16,16,16);
    
    rmin=center(1)-w_halfsize(1);
    rmax=center(1)+w_halfsize(1);
    cmin=center(2)-w_halfsize(2);
    cmax=center(2)+w_halfsize(2);
    
    wmax=(rmin-center(1)).^2+(cmin-center(2)).^2+1;
    for i=rmin:rmax 
      for j=cmin:cmax
        d=(i-center(1)).^2+(j-center(2)).^2;
        w=wmax-d; 
        R=floor(image(i,j,1)/16)+1;
        G=floor(image(i,j,2)/16)+1;
        B=floor(image(i,j,3)/16)+1;
        histo(R,G,B)=histo(R,G,B)+w;    
      end
    end
    
    for i=1:16
      for j=1:16
        for k=1:16
          index=(i-1)*256+(j-1)*16+k;      
          q_u(index)=histo(i,j,k);
          sum_q=sum_q+q_u(index);
        end
      end
    end
    
    q_u=q_u/sum_q; % normalize
    rgbTracking

    کد:
    function center=rgbTracking(image,center,w_halfsize,q_u,minDist,maxIterNum,incre)
    
    sum_p=0; 
    histo=zeros(16,16,16);   % initilize candiate model
    
    iterations=0;        % 
    center_old=center;
    
    % position of candidate target window
    rmin=center(1)-w_halfsize(1)-incre;
    rmax=center(1)+w_halfsize(1)+incre;
    cmin=center(2)-w_halfsize(2)-incre;
    cmax=center(2)+w_halfsize(2)+incre;
    
    height=size(image,1);
    width=size(image,2);
      
    while 1
      wmax=(rmin-center(1)).^2+(cmin-center(2)).^2+1;  
      for i=rmin:rmax     % 
        for j=cmin:cmax
          if (i>=1 & i<=height & j>=1 & j<=width)
            d=(i-center(1)).^2+(j-center(2)).^2;
            w=wmax-d; % 
            R=floor(image(i,j,1)/16)+1;
            G=floor(image(i,j,2)/16)+1;
            B=floor(image(i,j,3)/16)+1;
            histo(R,G,B)=histo(R,G,B)+w;
          end
        end
      end
    
      for i=1:16
        for j=1:16
          for k=1:16
            index=(i-1)*256+(j-1)*16+k;
            p_u(index)=histo(i,j,k);
            sum_p=sum_p+p_u(index);
          end
        end
      end
      
      p_u=p_u/sum_p; 
    
      n=1;
      for i=rmin:rmax % compute w=sqrt(q_u(i)/p_u(i))
        for j=cmin:cmax
          if (i>=1 & i<=height & j>=1 & j<=width) 
            R=floor(image(i,j,1)/16)+1;
            G=floor(image(i,j,2)/16)+1;
            B=floor(image(i,j,3)/16)+1;
            u=(R-1)*256+(G-1)*16+B;
            x(1,n)=i;
            x(2,n)=j;        
            w_i(n)=sqrt(q_u(u)/p_u(u));                                
            n=n+1;
          end
        end
      end
    
      center_r=(x*w_i'/sum(w_i))';        % new centroid  
      MS=sqrt(sum((center_r-center_old).^2));  % norm of mean shift vector 
      iterations=iterations+1;          % mean shift iteration number
      
      % is mean shift convergence?
      if (MS<minDist | iterations>=maxIterNum)
        break;
      end
      
      center_old=center_r;             
      center=floor(center_r);           
    
      rmin=center(1)-w_halfsize(1)-incre;     
      rmax=center(1)+w_halfsize(1)+incre;
      cmin=center(2)-w_halfsize(2)-incre;
      cmax=center(2)+w_halfsize(2)+incre;
      
      histo=zeros(16,16,16);           % reinitilize candiate model
      sum_p=0;     
    end

    يک مقايسه و بررسي خوب از روش meanshift در اين مقاله ارائه شده
    RECENT ADVANCE ON MEAN SHIFT TRACKING: A SURVEY 2013
    HE, LIWEN, YONG XU, YAN CHEN, and JIAJUN WEN

    object tracking: http://www.eca.ir/forum2/index.php?topic=88447.msg547644#msg547644

    any help or opinion on robot mapping will be welcome
  3. #3
    2014/11/29
    5
    0

    پاسخ : اجرای کد meanshift

    من کد MEAN SHIFT را اجرا کردم اما در خط RGBTRACKING این پیغام رو میده که که این دستور تعریف نشده
  4. #4
    2010/10/10
    92
    1

    پاسخ : اجرای کد meanshift

    سلام
    باید سه تا کد بالا رو به صورت جداگانه ذخیره کند و داخل یک پوشه باشند
    انما الحیوة عقیدة و جهاد
نمایش نتایج: از 1 به 4 از 4

موضوعات مشابه

  1. اجرای gcode با AVR
    توسط behrooz006 در انجمن میکروکنترلرهای AVR
    پاسخ: 33
    آخرين نوشته: 2019/11/15, 20:34
  2. خطا در اجرای TIA Portal V13
    توسط nima_xer در انجمن PLC
    پاسخ: 2
    آخرين نوشته: 2015/12/29, 15:56
  3. وقفه در اجرای i2c
    توسط Meysamhl در انجمن میکروکنترلرهای PIC
    پاسخ: 12
    آخرين نوشته: 2014/12/23, 11:24
  4. مشکل در اجرای pcb
    توسط control.bascom در انجمن نرم افزار Proteus
    پاسخ: 2
    آخرين نوشته: 2014/08/10, 23:43
  5. اجرای فایل .mat
    توسط hooman در انجمن Matlab
    پاسخ: 3
    آخرين نوشته: 2013/03/26, 08:23

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •