How to add AWGN white noise in a 2d vector

8 vues (au cours des 30 derniers jours)
Taimoor
Taimoor le 12 Oct 2013
mixed_ocr is a vector of 350x250. im receiving an error with the following code..please help
CODE :
clc
A1 = load('mixed_ocr.mat');
mixd_ocr = (A1.mixed_ocr);
y = awgn(mixd_ocr,10,'measured');
ERROR:
??? Error using ==> plus
Integers can only be combined with integers of the same class, or scalar doubles.
Error in ==> awgn at 272
y = sig+wgn(size(sig,1), size(sig,2), noisePower, 1, state, pMode, opType);
Error in ==> PARTA_Q3 at 4
y = awgn(mixd_ocr,10,'measured');
  1 commentaire
Nishitha Ayyalapu
Nishitha Ayyalapu le 14 Oct 2013
It works fine with the data I worked on:
A = rand(350,250);
y = awgn(A,10,'measured');
The problem might be in the .mat you loaded. More information on your 350x250 you loaded would help to resolve the error.

Connectez-vous pour commenter.

Réponse acceptée

Wayne King
Wayne King le 14 Oct 2013
Modifié(e) : Wayne King le 14 Oct 2013
I think you should try casting the mixd_ocr matrix to double.
mixd_ocr = double(mixd_ocr);
If you execute
class(mixd_ocr) % before you cast to double
You'll probably see the issue. For example:
X = randn(350,250);
X = int8(X);
y = awgn(X,10,'measured');
gives the same error you are seeing.

Plus de réponses (0)

Catégories

En savoir plus sur Propagation and Channel Models dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by