当前位置: 首页 > news >正文

做旅游网站的目的与意义谷歌seo推广

做旅游网站的目的与意义,谷歌seo推广,无锡大型网站建设公司,五易网络1、python代码实现图片分割成九宫格 需要包含的库,没有下载安装的,需要自己安装哦。 实现原理很简单,就是用PIL库不断画小区域,切下来存储成新的小图片。 假设每一个格子的宽和高分别是w、h,那么第row行&#xff08…

1、python代码实现图片分割成九宫格

需要包含的库,没有下载安装的,需要自己安装哦。

实现原理很简单,就是用PIL库不断画小区域,切下来存储成新的小图片。

假设每一个格子的宽和高分别是w、h,那么第row行(从0开始计数),第col列(从0开始计数)的格子左上角坐标和右下角坐标分别是(col * w, row * h),(col * w + w, r * h + h)。

代码实例:

import tkinter as tk
from PIL import Image,ImageTk 
import sys
import tkinter.filedialog
#先将图片填充为正方形
def fill_image(image): width, height = image.size #比较图片的宽和高,选取值较大的作为新图的宽 newImage_width = width if width > height else height #生成正方形图,空白处用白色填充newImage = Image.new(image.mode, (newImage_width, newImage_width), color='white')  #如果原图宽大于高,则填充图片的竖直维度if width > height: newImage.paste(image, (0, int((newImage_width - height) / 2))) else: newImage.paste(image, (int((newImage_width - width) / 2),0)) return newImage 
# 切图(切成9张图)
def cut_image(image):width, height = image.sizecolWidth = int(width / 3)   #一行3张image_grid = []for i in range(0,3):for j in range(0,3):row = (j*colWidth,i*colWidth,(j+1)*colWidth,(i+1)*colWidth)image_grid.append(row)image_list = [image.crop(row) for row in image_grid]return image_list

运行结果:
在这里插入图片描述

2、C++代码实现图片分割成九宫格(附Opencv配置教程)

①、本示例中用opencv实现,需要配置,具体如下:

OpenCV下载地址:http://opencv.org/downloads.html,根据操作系统选择合适的安装包。本文使用的是isual Studio是VS2015版本。我把OpenCV解压到C:\opencv。

在Windows 10 中添加环境变量
在系统变量的Path变量中添加以下两个路径:
在这里插入图片描述
配置VS的目录
打开VS,新建一个C++项目,打开项目属性,配置VC++ 目录属性:

选择“包含目录”,添加OpenCV的include目录的路径:

选择“库目录”,添加OpenVC的lib文件夹的路径:
在这里插入图片描述
在这里插入图片描述
添加附加依赖项
添加附加依赖项就是添加所有的lib文件的路径,这些lib文件都是在前面那个库目录里面保存的。依次选择“链接器”、“输入”、“附加依赖项”,进入页面,开始添加opencv_worldxxxx.lib文件路径。

在这里插入图片描述
注意有两种lib文件,一种带d的是Debug模式,不带d的是Release模式,OpenCV版本不同,前面的序号也不同,需要做相应的修改,两种模式的lib最好不要放一起,否则有可能会导致其中一个模式出问题,Debug模式下使用namewindow函数创建窗口,运行代码会出现两幅图片。

②、代码示例:

#include "stdafx.h"
#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;int main()
{Mat src = imread("逃逸的卡路里.png");if (src.empty()){cout << "No Image!" << endl;system("pause");return -1;}//原图宽高int width = src.cols;int height = src.rows;int num = 3;//小方块数量(可实现任意等份分割)//制作九宫格每个小方块宽高int step_x = width / num;int step_y = height / num;//重新resize图片尺寸resize(src, src, Size(step_x * num, step_y * num), 1, 1, INTER_LINEAR);int space = 5; //空白间隔(实现九宫格效果)Mat canvas = Mat(Size(src.cols + space * (num - 1), src.rows + space * (num - 1)), CV_8UC3, Scalar(255, 255, 255)); //画布,用来制作九宫格图片int icount = 0;																													//就图片分成9个小块,将每一小块抠图至画布for (int i = 0; i < num; i++){for (int j = 0; j < num; j++){//小方块相对于原图左上角起点int x = j * step_x;int y = i * step_y;//将小方块抠图至画布。其中,每扣一小块需跳过space空白src(Rect(x, y, step_x, step_y)).copyTo(canvas(Rect(x + space * j, y + space * i, step_x, step_y)));char cpicpath[6];sprintf(cpicpath, "%d.jpg", icount);;imwrite(cpicpath, src(Rect(x, y, step_x, step_y)));	// 保存切割的图片icount++;}}imshow("canvas", canvas);imshow("test", src);waitKey(0);system("pause");return 0;
}

③、运行结果:

在这里插入图片描述

最后

以上就是这篇文章分享的所有内容了,看到的小伙伴如果觉得有用,记得收藏哦,防止下次走丢。

http://www.hkea.cn/news/920372/

相关文章:

  • 电子政务网站建设要求百度关键词规划师
  • 博客网站开发毕设免费大数据分析网站
  • 深圳教育平台网站建设好消息疫情要结束了
  • 国外设计文章的网站淘宝代运营靠谱吗
  • 市桥网站建设sem论坛
  • 猎头公司是做什么的可靠吗排名优化外包公司
  • 扶贫网站建设关键词查询神器
  • 沈阳酒店企业网站制作公司2023年9月疫情又开始了吗
  • 厦门专业网站建设如何快速推广一个新产品
  • 帮人做传销网站违法吗seo网站排名助手
  • 如何做优品快报下的子网站营销型网站建设目标
  • 用织梦做网站调用乱码营业推广是什么意思
  • 做走私网站北京口碑最好的it培训机构
  • 网站建设OA系统开发it培训机构哪家好
  • 网站运维可以做哪些域名查询网站入口
  • 网站开发的基本语言外贸平台自建站
  • 女生自己做网站营销方法有哪些
  • 怎么自己做网站吓别人金融网站推广圳seo公司
  • 彩票网站的客服有做吗海淀seo搜索优化多少钱
  • 河源哪有做网站网页模板设计
  • 手机网站可以做英文版本吗近三天时政热点
  • 怎么做网站游戏网络优化排名培训
  • ic外贸网站建设黑帽seo技巧
  • 实业有限公司网站怎么做百度一下了你就知道官网
  • 企业电子商务网站推广平台有哪些渠道
  • 本地用织梦做网站百度的网站网址
  • 基础展示营销型型网站新闻发稿平台有哪些
  • 做游戏赚钱的网站最新新闻热点事件2022
  • 商务网站建设哪家好推广代理公司
  • 自己做网站是否要买云主机西安百度提升优化