cuda 영상처리 예제

이 프로그램은 CUDA 장치에서 실행되므로 이미지 데이터를 GPU로 복사해야 합니다. 또한 이 알고리즘에서는 결과를 작성하기 위해 최종 메모리와 함께 원본 데이터의 복사본이 필요합니다. 따라서 이미지가 GPU에 복사된 다음 해당 이미지가 GPU 에서 GPU 메모리 복사본으로 GPU의 다른 위치에 복사됩니다. 커널이 호출되고 마지막으로 결과 이미지를 호스트로 다시 복사할 수 있습니다. 신용: main.cpp: GL 함수 / NVIDIA cuda 샘플 코드 에서 가져온 이미지 루프의 아이디어 convolution.cu : cuda 샘플 코드의 convolutionSeparable.pdf를 기반으로 구현 된 알고리즘과 https://web.archive.org/web/20060718054020/http://www.acm.uiuc.edu/siggraph/workshops/wjarosz_convolution_2001.pdf 알고리즘의 병렬 구현중 하나를 사용하거나 필터링을위한 이미지를로드하고 저장하기위한 lodepng을 사용하고 자신의 ppm 이미지 파일을 가지고 있어야합니다. 그것은 쉽게 매우 쉽고, 종속성이 없으며, 그냥 작동합니다. 예제 코드에서 명령줄 매개 변수의 입력 및 출력 이미지에 대한 파일 이름을 읽고 있습니다. 이제 이미지에서 프로그램을 실행하고 출력 이미지를 보십시오. 흐릿한, 응? rpgolshan/CUDA 이미지 처리의 새로운 릴리스에 대한 알림을 원하십니까? 상승 할 수있는 한 가지 질문은 스레드 블록이 32 × 32 크기조차도 좋지 않은 이유입니다.

그 이유는 1.3 이하의 컴퓨팅 기능의 CUDA 장치가 블록당 최대 512개의 스레드를 가질 수 있기 때문입니다. 2.0 이상의 컴퓨팅 기능을 갖춘 Cuda 장치는 CUDA의 몇 가지 상당한 하드웨어 향상으로 인해 블록당 최대 1024개의 스레드를 가질 수 있습니다. 따라서 코드를 모든 CUDA 장치와 호환하려면 블록당 512 개 이하의 스레드를 가져야합니다. 그러나 슈퍼 컴퓨터 또는 하드웨어 구성을 아는 개인용 컴퓨터에서만 프로그램을 실행하는 경우 블록당 1024개의 스레드를 모두 자유롭게 사용할 수 있습니다. 이 프로세스의 용이성을 보여주기 위해 이미지 소용돌이 알고리즘 자습서에서 일부 코드를 가져와 CUDA에서 실행되도록 수정했습니다. i 및 j 계산 이외에는 핵심 알고리즘 코드를 변경할 필요가 없었습니다! 우리는 lodepng가 얼마나 쉽게 사용하는지 알 수 있습니다.

This entry was posted in Uncategorized. Bookmark the permalink.

Fatal error: Cannot redeclare class walker in /home/content/90/8606590/html/booksnboots/wp-content/themes/teentouch/comments.php on line 10