#include"cv.h" 
#include"highgui.h" 
#include<iostream> 
using namespace std;  
double focus(IplImage* image);  
int main() { 
 IplImage* previous1;  
IplImage* previous2;  
IplImage* previous3;  
IplImage* previous4;  
 previous1=cvLoadImage("e://temporary/test01.bmp",); 
 previous2=cvLoadImage("e://temporary/test02.bmp",); 
 previous3=cvLoadImage("e://temporary/test03.bmp",); 
 previous4=cvLoadImage("e://temporary/test04.bmp",);  
 if(previous1!=&&previous2!=&&previous3!=&&previous4!=) 
 { 
  cvNamedWindow("previous1",); 
  cvShowImage("previous1",previous1);   cvNamedWindow("previous2",); 
  cvShowImage("previous2",previous2);   cvNamedWindow("previous3",); 
  cvShowImage("previous3",previous3);   cvNamedWindow("previous4",); 
  cvShowImage("previous4",previous4);  
  cout<<"The definition of the previous1 is: "<<focus(previous1)<<endl; 
  cout<<"The definition of the previous2 is: "<<focus(previous2)<<endl; 
  cout<<"The definition of the previous3 is: "<<focus(previous3)<<endl; 
  cout<<"The definition of the previous4 is: "<<focus(previous4)<<endl; 
  //关掉窗口,结束   cvWaitKey(0);  
  cvDestroyWindow("previous1");  
 cvReleaseImage(&previous1); 
  cvDestroyWindow("previous2"); 
  cvReleaseImage(&previous2);  
 cvDestroyWindow("previous3");   
cvReleaseImage(&previous3);  
 cvDestroyWindow("previous4");   
cvReleaseImage(&previous4);   return ;  } 
 return -; 
}  
double focus(IplImage* image) { 
 IplImage* picone=cvCreateImage(cvGetSize(image),,);  
 cvCvtColor(image,picone,CV_BGR2YCrCb);  
 CvScalar gety; 
 double z=,zy1=,zy2=,total=;  double gety1=,gety2=;  double final=;  
 for(int ix=;ix<(picone->height);ix++) 
  { 
   gety1=;   
 gety2=;   
 zy1=;   
 zy2=;  
   for(int jy=;jy<(picone->width);jy++) 
   { 
    gety=cvGet2D(picone,ix,jy); 
    z=0.5*gety.val[]-gety1+0.5*gety2+zy1-0.5*zy2;   
  total=total+z;     
gety2=gety1; 
    gety1=gety.val[];     zy2=zy1;     zy1=z;  
  }  
} 
 cvReleaseImage(&picone); 
 final=abs(total/((image->height)*(image->width)));  
 return final; 
}

基于opencv 的图片模糊判断代码的更多相关文章

  1. OpenCV2学习笔记(十四):基于OpenCV卡通图片处理

    得知OpenCV有一段时间.除了研究的各种算法的内容.除了从备用,据导游书籍和资料,尝试结合链接的图像处理算法和日常生活,第一桌面上(随着摄像头)完成了一系列的视频流处理功能.开发平台Qt5.3.2+ ...

  2. 基于OpenCV实现对图片及视频中感兴趣区域颜色识别

    基于OpenCV实现图片及视频中选定区域颜色识别 近期,需要实现检测摄像头中指定坐标区域内的主体颜色,通过查阅大量相关的内容,最终实现代码及效果如下,具体的实现步骤在代码中都详细注释,代码还可以进一步 ...

  3. Asp.net 基于Cookie简易的权限判断

    基于Cookie简易的权限判断代码,需要的朋友可以参考下. 写入Cookie页面,创建cookie后,设置cookie属性,并添加到Response.Cookies中读取cookie,利用cookie ...

  4. 边缘检测︱基于 HED网络TensorFlow 和 OpenCV 实现图片边缘检测

    本文摘录自<手机端运行卷积神经网络的一次实践 – 基于 TensorFlow 和 OpenCV 实现文档检测功能> 只截取感兴趣 的片段. . 一.边缘检测 1.传统边缘检测 Google ...

  5. 基于OpenCv和swing的图片/视频展示Java实现

    基于OpenCv和swing实现图片/视频的展示 图片的展示 swing展示图片,多为操作BufferedImage,这里要关注的核心是将Mat转为BufferedImage. 代码如下: publi ...

  6. Java基于OpenCV实现走迷宫(图片+路线展示)

    Java基于OpenCV实现走迷宫(图片+路线展示) 由于疫情,待在家中,太过无聊.同学发了我张迷宫图片,让我走迷宫来缓解暴躁,于是乎就码了一个程序出来.特此记录. 原图: 这张图,由于不是非常清晰, ...

  7. 基于opencv图片切割

    基于opencv图片切割为n个3*3区块 工作原因,切割图片,任务急,暂留调通的源码,留以后用. package com.rosetta.image.test; import org.opencv.c ...

  8. 基于jQuery可悬停控制图片轮播代码

    基于jQuery可悬停控制图片轮播代码.这是一款可悬停切换全屏轮播jQuery幻灯片.效果图如下: 在线预览   源码下载 实现的代码: <!-- 轮播广告 --> <div id= ...

  9. 基于jQuery弹出层图片动画查看代码

    分享一款基于jQuery弹出层图片动画查看代码是一款鼠标单击文字或图片内容放大显示且含圆角投影效果.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class=&q ...

随机推荐

  1. SQL基本语句(2)

    使用Insert语句插入新数据 语法:INSERT [INTO] tbl_name [(col_name,...)] VALUES (pression,...),… INSERT [INTO] tbl ...

  2. 【spring 3】AOP:静态代理

    一.代理的基本简介 首先,在什么时候使用代理: 在面向方面编程过程中,当需要对所有类进行某种操作(如,安全性检查,记录操作日志)时,考虑到OCP原则,我们不能在所有实现类中直接添加某些相关方法,这样一 ...

  3. Windows API学习---线程与内核对象的同步

    前言 若干种内核对象,包括进程,线程和作业.可以将所有这些内核对象用于同步目的.对于线程同步来说,这些内核对象中的每种对象都可以说是处于已通知或未通知的状态之中.这种状态的切换是由Microsoft为 ...

  4. CLRS:Max_sunsequence_sum O(n*n) O(nlgn) O(n)

    #include<stdio.h>#include<stdlib.h>#include<time.h>#define ARRAY_SIZE 1000int buf ...

  5. extern “C”原理,用法以及使用场景-2016.01.05

    1 问题提出 在编程过程中,经常发现如下用法: #ifndef _FILE_NAME_H_ #define _FILE_NAME_H_ #ifdef __cplusplus extern " ...

  6. 雷兽的数据库CAP乱谈之(一)阐述

    今天有人问我cap,找了https://my.oschina.net/lilw/blog/169776这片文字, 下面是cap那篇文字的解释: 所谓CAP理论,即: Cosistency       ...

  7. 【Python】django安装

    官方下载:https://www.djangoproject.com/download/ 报错 [root@test Django-]# python setup.py install Traceba ...

  8. 序列化和反序列化,异步调用web/wcf/函数

    //xml序列化 public static string Seria(DataSet ds) { XmlSerializer serializer = new XmlSerializer(typeo ...

  9. LLVM language 参考手册(译)(3)

    可见性模式(Visibility Styles) 所有全局变量和函数具有以下的可见性模式之一: “default” - Default style 在那些使用ELF object file格式的平台( ...

  10. CentOS6.5_python2.7.3下virt-manager无法启动

    配置virt-manager: 1.安装virt-manager, libvirt, qemu-kvm 2.配置libvirtd开机启动: chkconfig libvirtd on   #取消开机启 ...