Thông báo

Collapse
No announcement yet.

Help me về global trong Matlab

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Help me về global trong Matlab

    Các bạn xem hộ tớ đoạn code này với
    function menuOpen_Callback(hObject, eventdata, handles)
    % hObject handle to menuOpen (see GCBO)
    % eventdata reserved - to be defined in a future version of MATLAB
    % handles structure with handles and user data (see GUIDATA)
    global I Image
    [filename, pathname] = uigetfile({'*.jpg;*.tif;*.png;*.gif','All Image Files';...
    '*.*','All Files' },'mytitle',...
    'D:\mammo.jpg')
    s = [pathname,filename]
    I = imread(s);
    I = rgb2gray(I);
    Image = I;
    A = I;
    B = I;
    subplot(1,2,1); imshow(Image), title('Anh ban dau')
    subplot(1,2,2); imhist(Image), title('Histogram')

    function menuGiam_Callback(hObject, eventdata, handles)
    % hObject handle to menuGiam (see GCBO)
    % eventdata reserved - to be defined in a future version of MATLAB
    % handles structure with handles and user data (see GUIDATA)
    global I A B
    figure, imshow(B)
    figure, imshow(A)

    Thực ra cái menuGiam tớ làm một số các khác nhưng mà hiện tại tớ k thể nào làm cái B có giá trị được. I là ảnh ban đầu, tớ gán cho cả A và B, thja mà cuối cùng nó hiển thị được mỗi A, còn B thì nó hiển thị chg có j, mà cũng k báo lỗi chưa khai báo B.
    Bạn nào giúp tớ với. Thankssssssssssss
    Liệu Matlab có bị lỗi k? Với một số menu khác, tớ vẫn dùng global A được bình thường, vừa thử xóa cái dòng A = I đi, rùi vẫn chạy một hàm có global A, nó vậy chạy bình thường như vẫn còn dòng ý vậy >_< chg báo lỗi j cả ...
    Last edited by fantagirl; 13-04-2009, 00:47.

  • #2
    nobody helps me?????????

    Comment


    • #3
      Bạn đưa nguyên đoạn code lên đi.Cả phần GUI nữa cho tiện việc kiểm tra thử được không ?

      Comment


      • #4
        Đây là hai menu mở ảnh và tăng sáng

        function menuOpen_Callback(hObject, eventdata, handles)
        % hObject handle to menuOpen (see GCBO)
        % eventdata reserved - to be defined in a future version of MATLAB
        % handles structure with handles and user data (see GUIDATA)
        global I Image
        [filename, pathname] = uigetfile({'*.jpg;*.tif;*.png;*.gif','All Image Files';...
        '*.*','All Files' },'mytitle',...
        'D:\mammo.jpg')
        s = [pathname,filename]
        I = imread(s);
        I = rgb2gray(I);
        Image = I;
        Incr = I;
        subplot(1,2,1); imshow(Image), title('Anh ban dau')
        subplot(1,2,2); imhist(Image), title('Histogram')

        function menutang_Callback(hObject, eventdata, handles)
        % hObject handle to menutang (see GCBO)
        % eventdata reserved - to be defined in a future version of MATLAB
        % handles structure with handles and user data (see GUIDATA)
        global I A Incr
        [m,n] = size(I);
        for i = 1:m
        for j = 1:n
        Incr(i,j) = Incr(i,j) + 20;
        end
        end
        A = Incr;
        figure, subplot(1,2,1); imshow(A), title('Anh tang sang')
        subplot(1,2,2); imhist(A), title('Histogram')

        Bạn xem giúp tớ nhé, thanksssssssss

        Comment


        • #5
          Theo lý thuyết thì bạn chẳng có vấn đề gì với global cả :-D.
          Bạn thử xem lại đoạn code này:
          Nguyên văn bởi fantagirl Xem bài viết
          [m,n] = size(I);
          for i = 1:m
          for j = 1:n
          Incr(i,j) = Incr(i,j) + 20;
          end
          end
          A = Incr;
          figure, subplot(1,2,1); imshow(A), title('Anh tang sang')
          subplot(1,2,2); imhist(A), title('Histogram'
          Vì A chỉ nhận theo size(I), chứ ko phải chuyển kiểu ảnh theo I, nên khi bạn dùng hàm imhist(A), nó ko làm gì cả. Bạn thử đọc lại hàm imhist xem.

          Comment

          Về tác giả

          Collapse

          fantagirl Tìm hiểu thêm về fantagirl

          Bài viết mới nhất

          Collapse

          Đang tải...
          X