Python-OpenCV极坐标变换(圆形图片转换到长方形图片)
变换效果如下图
Python代码如下
#coding=utf-8
import numpy as np
import cv2
def img_polar_transform(input_img,center,r_range,theta_rangge=(0,360),r_step=0.5,theta_step=360.0/(180*8)):minr,maxr=r_rangemintheta,maxtheta=theta_ranggeH=int((maxr-minr)/r_step+1)W=int((maxtheta-mintheta)/theta_step+1)output_img=125*np.ones((H,W,3),input_img.dtype)print(input_img.shape)print(output_img.shape)x_center,y_center=center#极坐标变换r=np.linspace(minr,maxr,H)r=np.tile(r,(W,1))r=np.transpose(r)#矩阵的转置theta=np.linspace(mintheta,maxtheta,W)theta=np.tile(theta,(H,1))#在垂直方向重复H次,水平重复1次x,y=cv2.polarToCart(r,theta,angleInDegrees=True)#最邻近插值C=3for c in range(C):for i in range(H):for j in range(W):px=int(round(x[i,j])+x_center)py = int(round(y[i, j]) + y_center)if ((px>=0 and px<=W-1) and (py>=0 and py<=H-1)):output_img[i,j,c]=input_img[px,py,c]return output_img
input_img = cv2.imread('C:\\Users\\dwx\\Desktop\\bigdata\\train\\origin\\animal_final\\25_cir.png')
h,w=input_img.shape[:2]
center=(int(h/2),int(w/2))
r_range=(0,159)#修改为原图尺寸一半-1
output_img=img_polar_transform(input_img,center,r_range)
cv2.imshow('img',input_img)
cv2.imshow('polar',output_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
注意
r_range=(0,159)#修改为原图尺寸一半-1
灰度图可在读取图片时,在最后添加一句代码
cv2.IMREAD_GRAYSCALE
input_img = cv2.imread('C:\\Users\\dwx\\Desktop\\bigdata\\train\\origin\\animal_final\\25_cir.png',cv2.IMREAD_GRAYSCALE)
Python-OpenCV极坐标变换(圆形图片转换到长方形图片)相关推荐
- python opencv 实现从一个文件夹中读取图片做切割处理后放入另一个文件夹
python opencv 实现从一个文件夹中读取图片切割处理后放入另一个文件夹. 实现的功能是把一个文件夹里的图片作处理,即把原图片中心为起点切割成1536*1536的图片,原图片必须大于这个的大小 ...
- python制作ico图标_python使用PythonMagic k将jpg图片转换成ico图片的方法
python使用PythonMagic k将jpg图片转换成ico图片的方法 发布时间:2017-06-27 08:00 来源:互联网 当前栏目:网页设计教程 这篇文章主要介绍了python使用Pyt ...
- MATLAB应用实战系列(七十一)-MATLAB实战应用案例:图像处理将灰度图片变成负片彩色图片转换成灰度图片
前言 本文目录 获取图片的信息 将灰度图片变成负片 彩色图片转换成灰度图片 图像噪声的添加 加10次噪声 colorbar的使用 将数据转换为图片 clc clearA是结构体名,用来存储读入的图像数 ...
- pdf图片转换成word图片
pdf图片转换成word图片 随着网络的迅速,纸质的书籍越来越少,但是还是有极少一部分人热衷于发行纸质书籍,这其中不乏一些好书,上次就在朋友家看到一本好书,于是将书名记下.但是在各大新华书店都没有找到 ...
- 【学习笔记】简易的24位BMP图片转换成灰度图片
简易的24位BMP图片转换成灰度图片的C语言实现 使用C语言实现的一个简易的24位BMP图片转换成灰度图片的程序.需要先准备一张24位的BMP图片. 说明 RGB图片转换成灰度图片主要是使用这个公式: ...
- Python OpenCV 彩色图像与灰度图像的转换
今天是持续写作的第 41 / 100 天. 如果你有想要交流的想法.技术,欢迎在评论区留言. 想不到,今天学习的竟然还是彩色图像与灰度图像的转换.经过前面的学习,你们和我一样,有没有掌握 2 种彩色图 ...
- [python opencv 计算机视觉零基础到实战] 十、图片效果毛玻璃
一.学习目标 了解高斯模糊的使用方法 了解毛玻璃的图片效果添加 了解如何自己做一个噪声图片 上一篇:[python opencv 计算机视觉零基础到实战] 九.模糊 如有错误欢迎指出~ 二.了解模糊与 ...
- asp.net 将bmp格式图片怎么转换为jpg_Heic图片转换精灵-Heic图片高清转换JPG/PNG/BMP方法...
想打开heic文件,首先要做的是把图片格式转换成电脑可以查看的,电脑可以查看的形式也并非很单一,比如jpg/bmp/png,这些都是比较常用的格式,首先heic图片是苹果手机独有的图片格式,电脑上或者 ...
- java图片转换pdf_Java实现图片转换PDF文件的示例代码
最近因为一些事情,需要将一张简单的图片转换为PDF的文件格式,在网上找了一些工具,但是这些工具不是需要注册账号,就是需要下载软件. 而对于只是转换一张图片的情况下,这些操作显然是非常繁琐的,所以作者就 ...
最新文章
- 栈 -- 顺序栈、链式栈的实现 及其应用(函数栈,表达式求值,括号匹配)
- 64 DLL动态链接库换一台电脑就不能加载
- dot--向量或矩阵的点乘
- Android解析WindowManagerService(二)WMS的重要成员和Window的添加过程
- 《可穿戴创意设计:技术与时尚的融合》一一3.3 纺织与教育
- python大数_python处理大数字的方法
- 使用xtrabackup(innobackupex)实现MySQL的热备
- 个人作业五:四则运算二
- python编程类型_Python 基础编程 数据类型(一)
- 网络爬虫--抓取图片_vortex_新浪博客
- 【概念的辨异】—— ISO C 与 POSIX C(C standard library 与 C POSIX library)
- Spring Boot 日志
- 关于文章cisco漏洞4786
- java整型_java整型数值
- rabbitmq4-工作队列及公平分发模式
- USB免驱NFC读写器 Android系统中NFC读写范例
- SpringCloud Nacos 【服务端】服务注册源码解析
- 要学习使用 calib3D 模块在图像中创建 3D 效果-姿势估计
- laravel异常前后端独立返回 阿星小栈
- ios You app information could not be saved. Try again. If the problem persists, contact us