本文整理汇总了C++中FImage::normalize方法的典型用法代码示例。如果您正苦于以下问题:C++ FImage::normalize方法的具体用法?C++ FImage::normalize怎么用?C++ FImage::normalize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FImage
的用法示例。
在下文中一共展示了FImage::normalize方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: on_bSobelXY_clicked
void MainWindow::on_bSobelXY_clicked() {
if(original != nullImage){
EdgeType type = (EdgeType)ui->cbEdgeTypes->currentIndex();
FImage image(original);
Kernel sobelX = Kernel::createSobelKernelX();
Convolution convX = Convolution(sobelX, type);
FImage resultX = convX.apply(image);
resultX.normalize();
Kernel sobelY = Kernel::createSobelKernelY();
Convolution convY = Convolution(sobelY, type);
FImage resultY = convY.apply(image);
resultY.normalize();
FImage result(resultX.getWidth(), resultY.getHeight());
for(int x = 0; x < resultX.getWidth(); ++x) {
for(int y = 0; y < resultX.getHeight(); ++y) {
float valX = resultX.getValue(x, y);
float valY = resultY.getValue(x, y);
result.setValue(x, y, sqrtf(valX * valX + valY * valY));
}
}
result.normalize();
ui->imageLabel->setPixmap(QPixmap::fromImage(result.toQImage()));
}
}
示例2: on_bSobelY_clicked
void MainWindow::on_bSobelY_clicked() {
if (original != nullImage){
EdgeType type = (EdgeType)ui->cbEdgeTypes->currentIndex();
FImage image(original);
Kernel sobelY = Kernel::createSobelKernelY();
Convolution conv = Convolution(sobelY, type);
FImage result = conv.apply(image);
result.normalize();
ui->imageLabel->setPixmap(QPixmap::fromImage(result.toQImage()));
}
}
示例3: on_bGauss_clicked
void MainWindow::on_bGauss_clicked(){
if(original != nullImage){
const double sigma = ui->sliderRadius->value();
EdgeType type = (EdgeType)ui->cbEdgeTypes->currentIndex();
FImage image(original);
if(ui->chbSeparable->isChecked()){
Kernel xKernel = Kernel::createGaussSeparateKernelX(sigma);
Convolution convX = Convolution(xKernel, type);
FImage resultX = convX.apply(image);
Kernel yKernel = Kernel::createGaussSeparateKernelY(sigma);
Convolution convY = Convolution(yKernel, type);
FImage resultY = convY.apply(resultX);
resultY.normalize();
ui->imageLabel->setPixmap(QPixmap::fromImage(resultY.toQImage()));
} else {
Kernel gaussKernel = Kernel::createGaussKernel(sigma);
Convolution conv = Convolution(gaussKernel, type);
FImage result = conv.apply(image);
result.normalize();
ui->imageLabel->setPixmap(QPixmap::fromImage(result.toQImage()));
}
}
}