How can i replace this code to fast up?
    조회 수: 3 (최근 30일)
  
       이전 댓글 표시
    
 for i=1:500,
    subplot(23,23,i);
    x=vishid(:,i);
    imagesc(reshape(x,imagesize));
    colormap gray;
end
Here,vishid is 784*500 matrix, imagesize=28*28
댓글 수: 2
  Geoff Hayes
      
      
 2014년 8월 5일
				Subha - the above code is trying to create 500 subplots within the figure, so it may take some time! :) Adding a drawnow command after the colormap gray line shows how the first 30-40 subplots get drawn relatively quickly, but over time, it takes longer and longer to add the newest subplot to the figure. Even just doing the above with something as simple as
 for k=1:500
    h = subplot(23,23,k);
    set(gca,'XLim',[0 1]);
    drawnow;
end
takes a long time (this was just to see if the bottleneck had to do with the reshape and imagesc - not the case).
Is there a need to show all 500 subplots on the same figure, or could you break it into two figures of 250?
답변 (3개)
  Jan
      
      
 2014년 8월 5일
        Do you really need 500 images with separate axes objects? You can draw 500 im ages in one axes, when wet the coordinates appropriately. This would be much faster.
댓글 수: 3
  Image Analyst
      
      
 2014년 8월 6일
				I totally agree. 500 subplots is absurd. Most of the space will be taken up be white space and you won't see the images.
  Matt J
      
      
 2014년 8월 6일
				Whether it's worthwhile depends on how well you need to see the images. Thumbnail views have their uses.
  Matt J
      
      
 2014년 8월 5일
        Making the figure invisible until all subplots have been established might help,
   h=figure; 
   set(h,'Visible','off')
    for i=1:500,
        subplot(23,23,i);
        x=vishid(:,i);
        imagesc(reshape(x,imagesize));
        colormap gray;
    end
   set(h,'Visible','on')
  Image Analyst
      
      
 2014년 8월 6일
        If you have enough memory, use the montage() function. Or else just use regular indexing. Are the images grayscale or color?
댓글 수: 6
  Image Analyst
      
      
 2014년 9월 25일
				Does it do what you want? I thought it did what you said to do. If it does, please mark it "Accepted".
참고 항목
카테고리
				Help Center 및 File Exchange에서 Color and Styling에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
