beagleboard üzerinde çalışmak üzere tasarlanmış bazı görüntü işleme algoritmaları uygulamak istiyorum. Bu algoritmalar yoğun olarak konvolüsyonlar kullanır. 2D konvolüsyon için iyi bir C uygulaması bulmaya çalışıyorum (muhtemelen Hızlı Fourier Dönüşümü'nü kullanarak). Algoritmanın beagleboard'un DSP'sinde çalışmasını da istiyorum çünkü DSP'nin bu tür işlemler için optimize edildiğini duydum (çoklu-birikimli talimatı ile).DSP için Hızlı 2B evrişim
Sahada hiç arka planım yok, bu yüzden evrimin benimsenmesi için iyi bir fikir olmayacağını düşünüyorum (muhtemelen bunu arkasındaki tüm matematiği anlayan biri kadar iyi yapmayacağım). DSP için iyi bir C konvolüsyon uygulamasının bir yerde var olduğuna inanıyorum ama bunu bulamadım?
Birisi yardımcı olabilir mi?
DÜZENLEME: Çekirdeğin çekirdeği oldukça küçüktür. Boyutları 2X2 veya 3X3'tür. Yani FFT tabanlı bir uygulama aramıyorum sanırım. İnternette tanımını görmek için evrimleşmeyi araştırıyordum, böylece onu ileriye doğru bir şekilde uygulayabiliyorum (gerçekten evrişimin ne olduğunu bilmiyorum). Tüm bulduğum çarpık integraller ile bir şey ve matrisler ile nasıl yapılacağı hakkında hiçbir fikrim yok. Birisi bana 2X2 çekirdek durumu için bir parça kod (veya sözde kod) verebilir mi?
http://en.wikipedia.org/wiki/Convolution#Discrete_convolution –
@Peter : Teşekkürler, ama burada 1D durumundan bahsediyorlar, 2D konvolüsyonu hakkında hiçbir şey yok – snakile
2d konvolüsyonları (görüntü işleme) genellikle ayrılabilir, bu yüzden sırayla 2 1-d konvolüsyon olarak çalıştırılabilir. Bu işlem gereksinimini çok daha küçük hale getirir. Kullanmak istediğiniz çekirdek çeşitlerinden örnekler verebilir misiniz? –