CPU, CUDA ve C++ AMP Görüntü Filtreleri
CUDA ve C++ AMP kullanarak kolayca görüntü filtreleri yazabilirsiniz!
Public Üye Fonksiyonlar | Korumalı Üye Fonksiyonlar | Korumalı Özellikler(attribute)
SingleCudaFilter Sınıf Referans

CUDA kullanarak GPU üzerinde görüntü filtrelemek için kullanılan sınıf. Ayrıntılar...

#include <SingleCudaFilter.h>

SingleCudaFilter için kalıtım şeması:
Inheritance graph
[lejant]

Tüm üyelerin listesi.

Public Üye Fonksiyonlar

 SingleCudaFilter (ptKernelLauncher kernelLauncher)
 kernelLauncher metod işaretçisini alan yaratıcı.
virtual void InitFilter (int width, int height, int rowStride)
 CPU ve GPU üzerinde normalize edilmiş görüntüler için bellek ayırır.
virtual void FilterImage (char *imageData)
 Yaratıcıda alınan kerneli çağırır.
virtual void ReleaseFilter ()
 CPU ve GPU üzerinde normalize edilmiş görüntüler için ayrılmış belleği serbest bırakır.

Korumalı Üye Fonksiyonlar

 DISALLOW_COPY_AND_ASSIGN (SingleCudaFilter)

Korumalı Özellikler(attribute)

float * h_Image
 Normalize edilmiş görüntünün CPU bellek adresi.
float * d_Image
 Normalize edilmiş görüntünün GPU bellek adresi.
ptKernelLauncher kernelLauncher

Ayrıntılı tanımlama

CUDA kullanarak GPU üzerinde görüntü filtrelemek için kullanılan sınıf.

SingleCudaFilter sınıfının görevi, FilterImage metoduna gönderilen görüntüyü normalize ederek GPU belleğine aktarmak ve bu belleği yönetmektir.

SingleCudaFilter.h dosyasının 56 numaralı satırında tanımlanmıştır.


Constructor & Destructor Dokümantasyonu

SingleCudaFilter::SingleCudaFilter ( ptKernelLauncher  kernelLauncher) [inline, explicit]

kernelLauncher metod işaretçisini alan yaratıcı.

Parametreler:
kernelLauncherkernelLauncher tipinde metod işaretçisi alan yaratıcı.

SingleCudaFilter.h dosyasının 73 numaralı satırında tanımlanmıştır.


Üye Fonksiyon Dokümantasyonu

SingleCudaFilter::DISALLOW_COPY_AND_ASSIGN ( SingleCudaFilter  ) [protected]
virtual void SingleCudaFilter::FilterImage ( char *  imageData) [inline, virtual]

Yaratıcıda alınan kerneli çağırır.

Parametreler:
imageDataGörüntünün BGR kanal sıralı bellekteki adresi.

Görüntüyü normalize ederek kernelLauncher işaretçisinin gösterdiği metodu çağırır ardından görüntüyü denormalize eder( [0, 255] aralığına ). Kernelde işlenen görüntüden sonuç olarak [0, 1] aralığı dışında bir değer dönerse o kanalın değeri [0, 255] aralığından dışarıda olabilir. Bu durumda değer yakın olduğu sınıra indirgenir.

Şu üyeleri gerçekler: ISingleImageFilter.

Şu üyeler tarafından yeniden tanımlanmıştır : SingleCudaTexFilter.

SingleCudaFilter.h dosyasının 110 numaralı satırında tanımlanmıştır.

Bu fonksiyon için çağırılma şeması:

virtual void SingleCudaFilter::InitFilter ( int  width,
int  height,
int  rowStride 
) [inline, virtual]

CPU ve GPU üzerinde normalize edilmiş görüntüler için bellek ayırır.

Şu üyeleri yeniden tanımlar : SingleImageFilter.

Şu üyeler tarafından yeniden tanımlanmıştır : SingleCudaTexFilter.

SingleCudaFilter.h dosyasının 81 numaralı satırında tanımlanmıştır.

Bu fonksiyon için çağırılma şeması:

virtual void SingleCudaFilter::ReleaseFilter ( ) [inline, virtual]

CPU ve GPU üzerinde normalize edilmiş görüntüler için ayrılmış belleği serbest bırakır.

Şu üyeleri yeniden tanımlar : SingleImageFilter.

Şu üyeler tarafından yeniden tanımlanmıştır : SingleCudaTexFilter.

SingleCudaFilter.h dosyasının 148 numaralı satırında tanımlanmıştır.

Bu fonksiyon için çağırılma şeması:


Üye Veri Dokümantasyonu

float* SingleCudaFilter::d_Image [protected]

Normalize edilmiş görüntünün GPU bellek adresi.

SingleCudaFilter.h dosyasının 60 numaralı satırında tanımlanmıştır.

float* SingleCudaFilter::h_Image [protected]

Normalize edilmiş görüntünün CPU bellek adresi.

SingleCudaFilter.h dosyasının 59 numaralı satırında tanımlanmıştır.

SingleCudaFilter.h dosyasının 62 numaralı satırında tanımlanmıştır.


Bu sınıf için dokümantasyon aşağıdaki dosyadan üretilmiştir:
 Tümü Sınıflar Dosyalar Fonksiyonlar Değişkenler Typedef'ler Makrolar