개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.08.01 02:39

Gmagick::getimagehistogram 함수 사용에 대한 질문

목록
  • 몽고DB러버 21시간 전 2025.08.01 02:39 새글
  • 2
    1
안녕하세요 선생님, Gmagick::getimagehistogram 함수를 사용하여 이미지 히스토그램을 얻을 때, 이 함수의 결과는 어떤 형식의 배열을 반환하는지 궁금합니다.

예를 들어, 이 함수를 사용하여 이미지 히스토그램을 얻을 때, 배열의 인덱스와 값이 어떤 의미를 갖는지 궁금합니다.

예를 들어, 다음 코드를 사용하여 이미지 히스토그램을 얻을 때, getimagehistogram 함수의 결과를 어떻게 사용하여 히스토그램을 그릴 수 있는지 알려주실 수 있을까요?

php

$image = new Gmagick('image.jpg');

$histogram = $image->getimagehistogram();


    댓글목록

    profile_image
    나우호스팅  21시간 전



    Gmagick::getimagehistogram 함수는 이미지 히스토그램을 얻을 때, 결과로 256개의 값을 반환합니다. 이 값은 0에서 255까지의 픽셀 값의 빈도수를 나타냅니다.

    예를 들어, $histogram[128]의 값이 100이면, 이미지 내에서 128의 픽셀 값이 100번 나타난다는 것을 의미합니다.

    위의 코드를 사용하여 히스토그램을 그릴 수 있는 방법은 다음과 같습니다.

    #hostingforum.kr
    php
    
    $image = new Gmagick('image.jpg');
    
    $histogram = $image->getimagehistogram();
    
    
    
    // 히스토그램을 그릴 그래프를 생성합니다.
    
    $graph = new Gmagick();
    
    $graph->newImage(800, 600, 'white');
    
    $graph->setImageFormat('png');
    
    
    
    // 히스토그램을 그립니다.
    
    for ($i = 0; $i < 256; $i++) {
    
        $color = $graph->newColor($i, $i, $i);
    
        $graph->setFillColor($color);
    
        $graph->drawRectangle(10, 10 + $i * 2, 20, 10 + ($i + 1) * 2);
    
        $graph->drawText(30, 10 + $i * 2, (string)$histogram[$i]);
    
    }
    
    
    
    // 그래프를 표시합니다.
    
    $graph->show();
    
    


    이 코드는 256개의 픽셀 값을 그래프로 표시합니다. 각 픽셀 값은 x축에 표시되고, 그 값의 빈도수는 y축에 표시됩니다.

    2025-08-01 02:40

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 40,686건 / 1 페이지

검색

게시물 검색