2 lcc 633 lcc_633 于 2016.04.27 16:33 提问

数组锐化运行结果图像失常

结果图片
相关代码:
for (int i = 1; i < m1-1; i++) {

    uchar *p_now = img_t3.ptr<uchar>(i);
    uchar *p_pre = img_t3.ptr<uchar>(i-1);
    uchar *p_nex = img_t3.ptr<uchar>(i+1);
    uchar *p_out = result.ptr<uchar>(i);

    for (int j = 0; j < m3; j++) {
        if (j == 0 || j == m3-1) {
            p_out[j*m2 + 0] = 0;
            p_out[j*m2 + 1] = 0;
            p_out[j*m2 + 2] = 0;
        }
        else {
            p_out[j*m2 + 0] = p_now[j*m2 + 0] * 5 - p_nex[j*m2 + 0] - p_pre[j*m2 + 0] - p_now[(j - 1) * m2 + 0] - p_now[(j + 1) * m2 + 0];
            p_out[j*m2 + 1] = p_now[j*m2 + 1] * 5 - p_nex[j*m2 + 1] - p_pre[j*m2 + 1] - p_now[(j - 1) * m2 + 1] - p_now[(j + 1) * m2 + 1];
            p_out[j*m2 + 2] = p_now[j*m2 + 2] * 5 - p_nex[j*m2 + 2] - p_pre[j*m2 + 2] - p_now[(j - 1) * m2 + 2] - p_now[(j + 1) * m2 + 2];
        }
    }

}

uchar *r = result.ptr<uchar>(0);
uchar *rr = result.ptr<uchar>(result.rows-1);
for (int i = 0; i < m3; i++) {     //对第一行和最后一行没有处理的像素设置黑色
    r[i*m2 + 0] = 0;
    r[i*m2 + 1] = 0;
    r[i*m2 + 2] = 0;

    rr[i*m2 + 0] = 0;
    rr[i*m2 + 1] = 0;
    rr[i*m2 + 2] = 0;
}
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
我的OpenCV学习笔记(10):空域滤波之锐化滤波器
锐化的作用是加强图像的边沿和轮廓,通常也成为高通滤波器: 模板一般设计为中心处的值为正,外围的值为负(总系数之和为0): int main() { //源图像 Mat scr = imread("D:/picture/img.tif"); Mat rst; imshow("原图像",scr); Mat kernel(3,3,CV_32F,Scalar(-1)); // 分配像素
Java 图像的模糊与锐化
import java.awt.*; import java.awt.event.*; import java.awt.image.*; import javax.swing.*; import java.io.*; // 图像的模糊与锐化 by vincent public class BlurAndSharpenDemo extends JFrame implements Action
关于android系统图像特效处理之锐化效果
本人做了一个图片浏览器,用了一些图像处理的算法,这个是一部分,APK安装包地址:http://static.apk.hiapk.com/html/2012/08/797656.html,欢迎下载和反馈; 关于android系统图像特效处理之锐化效果 public static Bitmap sharpenImageAmeliorate(SoftReference bmp)
Java 图像钝化与锐化
Java图像的钝化和锐化就是一个算法的问题,说白了就是两个方法的问题,所以非常容易,我觉得甚至比图像的加载和保存都简单。图像的加载请参考两篇站内文章:http://javapub.iteye.com/blog/683944 和http://javapub.iteye.com/blog/682257。  具体的锐化和钝化设计到的数学原理超出我的关心范围了也不去做过多的研究这里直接拿出道供大家参考:
图像处理之图像的平滑与锐化
图像处理之图像的平滑与锐化 概念: 锐化就是通过增强高频分量来减少图象中的模糊,因此又称为高通滤波。锐化处理在增强图象边缘的同时增加了图象的噪声。 平滑与锐化相反,就是滤掉高频分量,从而达到减少图象噪声,使图片变得有些模糊。 参考网址:http://blog.csdn.net/sinat_24648637/article/details/49661669
用matlab 对图像进行 拉普拉斯锐化
clear; clc I = imread('cameraman.tif'); figure(1);imshow(I); title('Original Image'); H = fspecial('unsharp'); sharpened = imfilter(I,H,'replicate'); figure(2);imshow(sharpened); title('Sharpene
高通滤波,锐化图像
introduction前面在低通滤波文章中探讨了低通滤波,去除噪声。在此,使用高通滤波,提取图像边缘,进而锐化图像。highpass filter & sharpen image 与低通滤波器相反,高通滤波器允许图像高频部分通过,而高频部分证实图像的边缘信息(或者噪声)。得到如下的图像 sharpen image将高通滤波器提取的高频部分加到原图上,从而强化图像的边缘信息,达到锐化图像的效果。
基于卷积完成简单的图片锐化效果
简单的卷积锐化效果的算子为:
灰度图像--图像增强 非锐化掩蔽 (Unsharpening Mask)
学习DIP第35天转载请标明本文出处:http://blog.csdn.net/tonyshengtan,欢迎大家转载,发现博客被某些论坛转载后,图像无法正常显示,无法正常表达本人观点,对此表示很不满意。有些网站转载了我的博文,很开心的是自己写的东西被更多人看到了,但不开心的是这段话被去掉了,也没标明转载来源,虽然这并没有版权保护,但感觉还是不太好,出于尊重文章作者的劳动,转载请标明出处!!!!文...
图像锐化-拉普拉斯算子
转自:http://blog.csdn.net/devil_pull/article/details/17246855 图像锐化(拉普拉斯算子): 将一副图像减去经过拉普拉斯滤波滞后的图像,这幅图像的边缘部分将得到放大,计算公式如下: 滤波后的像素值=5*中-左-右-上-下: [cpp] view plain copy