计算机视觉
川师_King
川师King永远的神
展开
-
证件照处理
标注人像轮廓from PIL import Imageedge=[]# 请在此处编辑您的代码#*********** Begin **********#img = Image.open('./step1/white.jpg')img = img.convert('RGB')width,height = img.sizefor h in range(0,height): s=-1;e=-1 for w in range(0,width): pix = img.g原创 2021-05-08 15:48:51 · 1150 阅读 · 0 评论 -
概率及常用概率分布的实现
二项分布#-*- coding:utf-8 -*-import numpy as npfrom scipy import statsn = input() #n是样本数p = input() #p是抽样概率n = int(n)p = float(p)########## Begin ##########k = range(n+1)binomial = stats.binom.pmf(k,n,p)print (binomial)########## End ###原创 2021-05-06 17:50:48 · 469 阅读 · 0 评论 -
拟合概率模型
最大似然法from functools import reducecoin_1 = float(input()) #硬币1正面朝上概率coin_2 = float(input()) #硬币2正面朝上概率coin_3 = float(input()) #硬币3正面朝上概率h = int(input()) #正面朝上次数t = int(input()) #反面朝上次数# 实现概率计算# 输入:w:正面朝上的概率 H:正面朝上的次数 T:反面朝上的次数原创 2021-05-06 17:49:12 · 1628 阅读 · 0 评论 -
边缘检测
边缘检测的基本原理与图import cv2import numpy as npdef task1(): filename = '/data/workspace/myshixun/task1/CRH.png' ########## Begin ########## # 1. 灰度模式读取图像,图像名为CRH CRH = cv2.imread(filename,0) # 2. 计算图像梯度。首先要对读取的图像进行数据变换,因为使用了 # numpy对梯度进行原创 2021-04-18 20:45:01 · 4315 阅读 · 2 评论 -
图像的阈值分割技术
全局阈值分割#include "BMP.h"BMP_Image* GlobalSegmentation(BMP_Image* Image_In){ BMP_Image* Image_GlobalSegmentation; Image_GlobalSegmentation = (BMP_Image*)malloc(sizeof(BMP_Image)); Image_GlobalSegmentation->width = Image_In->width;原创 2021-04-13 16:38:20 · 1010 阅读 · 0 评论 -
颜色的空间表示及其转换
第1关:RGB与HSI空间的相互转换#include "BMP.h"HSI* RGB2HSI(BMP_Image* Image_In){ HSI* BMP_HSI;//¶ÔRGB2HSI ÖÐH¡¢S¡¢I·ÖÁ¿·ÖÅäÄÚ´æ²¢¸³Öµ BMP_HSI = (HSI*)malloc(sizeof(HSI)); BMP_HSI->HSI_H = (BMP_Image*)malloc(sizeof(BMP_Image)); BMP_HSI->HSI_S =原创 2021-04-13 11:59:47 · 386 阅读 · 0 评论 -
彩色图像增强
#include "BMP.h"BMP_Image* PseudoColor(BMP_Image* Image_In){ BMP_Image* Image_PseudoColor; Image_PseudoColor = (BMP_Image*)malloc(sizeof(BMP_Image)); Image_PseudoColor->width = Image_In->width; Image_PseudoColor->height = Ima.原创 2021-04-13 11:58:58 · 579 阅读 · 0 评论 -
假彩色处理
任务描述:本关任务:在FalseColor.cpp补充代码,将三基色描绘的彩色图像映射为与原色不同的彩色图像。####相关知识:####测试说明:在main.cpp中对编写的代码进行测试:测试输入:无预期输出:True!####注意事项:main.cpp为评测文件,请不要随意修改,否则将导致评测不能正常执行。#include "BMP.h"BMP_Image* FalseColor(BMP_Image* Image_In){ BMP_Image* Image_Fals原创 2021-04-13 11:58:09 · 1127 阅读 · 0 评论 -
灰度修正
第1关:图像反色#include "BMP.h"BMP_Image* InvertColor(BMP_Image* Image_In){ BMP_Image* Image_InvertColor; Image_InvertColor = (BMP_Image*)malloc(sizeof(BMP_Image)); int i; memcpy(Image_InvertColor,Image_In,sizeof(BMP_Image));//ÔÚÑ»·ÌåÄÚ原创 2021-04-05 15:14:10 · 902 阅读 · 2 评论 -
空域的平滑
第1关:邻域平均法#include "BMP.h"BMP_Image* MeanFilter(BMP_Image* Image_In){ BMP_Image* Image_MeanFilter; Image_MeanFilter = (BMP_Image*)malloc(sizeof(BMP_Image)); Image_MeanFilter->width = Image_In->width -2; Image_MeanFilter->heig原创 2021-04-05 15:12:34 · 2017 阅读 · 3 评论 -
空域的锐化
第1关:Roberts梯度算子#include "BMP.h"BMP_Image* Roberts(BMP_Image* Image_In){ BMP_Image* Roberts; Roberts = (BMP_Image*)malloc(sizeof(BMP_Image)); Roberts->width = Image_In->width -1; Roberts->height = Image_In->height -1; Ro原创 2021-04-05 15:09:24 · 1123 阅读 · 1 评论 -
频域的平滑
第1关:理想_低通滤波#include "BMP.h"IplImage* Ideal_LowPassFilter(IplImage* im){ int i,j; IplImage *Ideal_LowPass = cvCreateImage(cvGetSize(im),IPL_DEPTH_8U,1);//˫ͨµÀ cvZero(Ideal_LowPass); //Çå¿ÕÕâ¸öͼÏñµÄÄÚÈÝ //******************ÀíÏëµÍͨ原创 2021-04-05 15:07:06 · 1237 阅读 · 1 评论 -
频域的锐化
第1关:理想_高通滤波#include "BMP.h"IplImage* Ideal_HighPassFilter(IplImage* im){ int i,j; IplImage *Ideal_HighPass = cvCreateImage(cvGetSize(im),IPL_DEPTH_8U,1);//˫ͨµÀ cvZero(Ideal_HighPass); //Çå¿ÕÕâ¸öͼÏñµÄÄÚÈÝ //******************ÀíÏë¸原创 2021-04-05 15:05:33 · 2641 阅读 · 2 评论 -
数字图像处理:形态学操作
第1关:图像的腐蚀import cv2def eros(): filepath = '/data/workspace/myshixun/task1/' img = cv2.imread(filepath +'dige.png') ########## Begin ########## img=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) ret,img=cv2.threshold(img,127,255,cv2.THRESH_BINAR原创 2021-03-23 16:42:11 · 1941 阅读 · 1 评论 -
离散傅里叶变换
第1关:二维离散傅里叶变换DFT任务描述:本关任务:在MyDFT.cpp补充代码,完成二维离散傅立叶变换。####相关知识:####测试说明:在main.cpp中对编写的代码进行测试:测试输入:无预期输出:True!####注意事项:main.cpp为评测文件,请不要随意修改,否则将导致评测不能正常执行#include "BMP.h"//һά¸µÀïÒ¶±ä»»void dft1(double *x, double *y,double *a,double *b,int n)原创 2021-03-23 16:39:10 · 514 阅读 · 1 评论 -
图像的阈值与平滑
第1关:图像阈值分割import cv2import matplotlib.pyplot as pltdef thd(): filepath='/data/workspace/myshixun/task1/' # 请根据左侧编程要求,完成图像阈值化操作: ########## Begin ########## img = cv2.imread(filepath+'cat.jpg') img = img[:,:,(2,1,0)] img_gray = cv原创 2021-03-23 16:31:21 · 1848 阅读 · 1 评论 -
基本的图像操作
OpenCV 提供了很多图像操作的工具,例如图像的读取与保存、滤波等工具。这些工具是开发计算机视觉项目的基础,因此熟悉与掌握这些工具的使用对以后的学习任务非常重要。本实训针对图片的基本读取和保存、图片通道分离与合并、边界填充与图片融合等操作进行介绍,通过基本知识与实际案例结合的方式,并辅助以练习,帮助你熟悉与掌握 OpenCV 的使用。第1关:图片的基本读取和保存操作import cv2def Gen(): filepath = '/data/workspace/myshixun/task1原创 2021-03-21 20:24:41 · 2013 阅读 · 2 评论 -
相机标定
在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。无论是在图像测量或者机器视觉应用中,相机参数的标定都是非常关键的环节,其标定结果的精度及算法的稳定性直接影响相机工作产生结果的准确性。本实训主要介绍张正友相机标定方法,实训通过知识讲解与具体实践相结合的方式,帮助理解该相机标定法的基本原理与操作。第1关:坐标变换及角点检测import cv2import numpy as npdef ta原创 2021-03-21 20:21:39 · 1078 阅读 · 0 评论 -
BMP图像的读
第1关:1位黑白BMP图像的读#include "BMP.h"BMP_Image* BMP_LoadImage(char* path){ BMP_BitMapFileHeader bmpFileHeader; BMP_BitMapInfoHeader bmpInfoHeader; BMP_RgbQuad* quad; BMP_Image* bmpImg; FILE* pFile; int width = 0; int height =原创 2021-03-21 20:18:58 · 1067 阅读 · 0 评论 -
BMP图像的写
第1关:1位黑白BMP图像的写#include "BMP.h"bool BMP_SaveImage(char* path, BMP_Image* bmpImg){ FILE *pFile; // unsigned short fileType; BMP_BitMapFileHeader bmpFileHeader; BMP_BitMapInfoHeader bmpInfoHeader; unsigned char pixVal; //= '\0'; i原创 2021-03-21 20:14:47 · 1155 阅读 · 0 评论