我正在尝试使用armadillo lib来计算向量的熵。代码如下。 vec的大小是相同的。什么时候出错了......如何解决它。
double ent(){
// arma :: vec imT(20);
arma :: mat A = randu(4,5);
arma :: vec imT = vectorise(A); ///矢量A是20乘1 col vec
双重; ent = 0;arma::uvec h = hist(imT);
arma::mat hp = arma::conv_to<arma::mat>::from(imT);
arma::mat prob = hp/hp.n_elem;
ent = -arma::accu(prob*log2(prob)); //entropy cal
prob.print("sd");
return 0;
}
错误:矩阵乘法:无法比较的矩阵维数20x1和20X1。