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

各地平台网站目前专业做水果的网站有哪些

各地平台网站,目前专业做水果的网站有哪些,美食网站建设设计方案,有网站和无网站的区别1 基本概念 位平面分解的核心思想是将图像的每一个像素分解为多个二进制位#xff0c;分别存储在不同的位平面上。例如#xff0c;如果一个图像是8位深度的#xff0c;则可以分解为8个位平面#xff0c;每个位平面上存储一个二进制位。 位平面分解在图像压缩中有着重要的…1 基本概念 位平面分解的核心思想是将图像的每一个像素分解为多个二进制位分别存储在不同的位平面上。例如如果一个图像是8位深度的则可以分解为8个位平面每个位平面上存储一个二进制位。 位平面分解在图像压缩中有着重要的应用因为它可以有效减少图像的存储大小。例如如果一个图像的最高位平面即最高二进制位存储的是图像的主要信息那么将其单独存储可以大大减小图像的大小。 此外位平面分解技术的应用非常广泛除了压缩技术以外在数字水印、和特征提取等方面都有重要的应用。通过对每个位平面进行单独处理可以更加精细地处理图像信息提高图像处理的效率和精度。 1.1 位平面分解流程 读入灰度图像并将其转换为二进制形式即将每个像素点的灰度值表示成8位二进制数。对于每个像素点的二进制数将它们按位拆分为8个二进制数每个数表示一个位平面。对于每个位平面将其转换为0或255的二值图像。具体方法是将每个像素点的该位的二进制数值提取出来然后将该值赋为0或255。这样就可以得到8个二值图像每个图像表示了原图像中某一位上的信息。保存每个位平面的二值图像以便后续使用。 1.2 位平面分解算法原理 假设原图像为 I(x,y)I(x,y)I(x,y)灰度级为 g(x,y)g(x,y)g(x,y)每个像素点的灰度值可以表示成一个8位的二进制数即 g(x,y)b727b626b525b424b323b222b121b0g(x,y) b_7 2^7 b_6 2^6 b_5 2^5 b_4 2^4 b_3 2^3 b_2 2^2 b_1 2^1 b_0g(x,y)b7​27b6​26b5​25b4​24b3​23b2​22b1​21b0​其中 b7b_7b7​ 到 b0b_0b0​ 分别表示第7位到第0位的二进制值取值为0或1。 对于第 iii 个位平面可以通过如下公式将其转换为0或255的二值图像 Pi(x,y)P_i(x,y)Pi​(x,y) Pi(x,y){255if bi10if bi0P_i(x,y) \begin{cases} 255 \text{if } b_i 1 \\ 0 \text{if } b_i 0 \end{cases}Pi​(x,y){2550​if bi​1if bi​0​ 这里 bib_ibi​ 表示 g(x,y)g(x,y)g(x,y) 的第 iii 位二进制值。 因此可以将原图像 I(x,y)I(x,y)I(x,y) 的每个像素点的二进制值拆分成8个位平面得到8个二值图像 P0(x,y),P1(x,y),⋯,P7(x,y)P_0(x,y), P_1(x,y), \cdots, P_7(x,y)P0​(x,y),P1​(x,y),⋯,P7​(x,y)它们表示了原图像中的信息在每个二进制位上的分布情况。 举个例子当我们的原始数据像素数据为 则首先将其格式转为二进制 之后将二进制的各位分别取出就形成了分解后的位平面 2 位平面分解的Python实现 使用OpenCV的imread函数读入一幅灰度图像灰度值范围为0~255并用imshow函数显示原图像。 import cv2 import numpy as np # 读入灰度图像并显示 lena cv2.imread(lenacolor.png, 0) cv2.imshow(lena, lena)获取图像的尺寸即行数和列数。 # 获取图像的尺寸 r, c lena.shape构造表示二进制位的图像即构造8个大小与原图像大小相同的图像每个图像上的像素值表示二进制数值的某一位。即124...128124...128124...128如换算成二进制则为000000010000001000000100...100000000000 00010000 00100000 0100...1000 0000000000010000001000000100...10000000 # 构造表示二进制位的图像 x np.zeros((r, c, 8), dtypenp.uint8) for i in range(8): x[:, :, i] 2 ** i print(x)其中xnp.zeros((r, c,8), dtypenp.uint8)语句设置一个用于提取各个位平面的提取矩阵。该矩阵是“r×c×8”大小的其中r是行高c是列宽8表示共有8个通道。矩阵x的8个通道分别用来提取灰度图像的8个位平面。例如x[:, :,0]用来提取灰度图像的第0个位平面。 构造表示每个位平面的图像即将原图像的每个像素的二进制数值按位拆分并将对应位平面上的像素值赋为该二进制位的数值其余像素值为0。并执行二进制维度上的AND关系。使用OpenCV的位运算 AND 可以直接执行上述操作。与运算的讲解点此查看 # 构造表示每个位平面的图像并显示 r np.zeros((r, c, 8), dtypenp.uint8) for i in range(8): # 使用位运算 AND 获取当前位平面的二值图像 r[:, :, i] cv2.bitwise_and(lena, x[:, :, i])将当前位平面的非零像素值赋为255将该位平面的二值图像转换为0/255的形式。这是因为位平面分解后的图像应为二值图像而Python在展示是默认为8位像素。因此我们要将二值的0或1转化为8位的0或255。 for i in range(8): # 使用位运算 AND 获取当前位平面的二值图像 r[:, :, i] cv2.bitwise_and(lena, x[:, :, i]) print(r) # 将非零像素值赋为255将当前位平面的二值图像转换为0/255的形式 mask r[:, :, i] 0 r[mask] 255最后使用imshow函数显示当前位平面的二值图像。完整的函数如下 import cv2 import numpy as np # 读入灰度图像并显示 lena cv2.imread(lenacolor.png, 0) #cv2.imshow(lena, lena) # 获取图像的尺寸 r, c lena.shape # 构造表示二进制位的图像 x np.zeros((r, c, 8), dtypenp.uint8) for i in range(8): x[:, :, i] 2 ** i print(x) # 构造表示每个位平面的图像并显示 r np.zeros((r, c, 8), dtypenp.uint8) for i in range(8): # 使用位运算 AND 获取当前位平面的二值图像 r[:, :, i] cv2.bitwise_and(lena, x[:, :, i]) print(r) # 将非零像素值赋为255将当前位平面的二值图像转换为0/255的形式 mask r[:, :, i] 0 r[mask] 255 # 显示当前位平面的二值图像 cv2.imshow(str(i), r[:, :, i]) # 等待用户按下任意键然后关闭所有窗口 cv2.waitKey() cv2.destroyAllWindows()最终图象被分解成了8张二值图像。并且位数越高的二值图像越能体现出原始图像的特征。
http://www.w-s-a.com/news/550090/

相关文章:

  • ps做网站分辨率自适应地方网站盈利
  • 免费自助小型网站专业网站建设组织
  • 猎聘网网站建设目标查看别人wordpress主题
  • 免费建设网站入驻网站备案不能更新吗
  • 个人网站制作代码西安建筑类公司
  • 网站备案要营业执照吗网站建设如何记账
  • 新手学做网站难吗外包服务商
  • 公司网站建设的项目工作分解结构wordpress插件后端页面
  • 四川省建设人才网站2018南京专业建站
  • ppt制作网站推荐seo教程百度网盘
  • 网站建设多少钱一平米网上商城网站开发报告
  • 福州网站建设招聘信息哈尔滨中企动力科技股份有限公司
  • 军事新闻最新seo关键词查询排名软件
  • 免费网站建设官网项目建设表态发言
  • 平谷建站推广广告投放平台主要有哪些
  • 网站备案掉了什么原因步骤怎么读
  • 徐州市建设监理协会网站做一个公司官网需要多少钱
  • 网站开发学什么数据库做公司网站注意事项
  • 游戏开发网站建设国际战事最新消息
  • 达州+网站建设网站里自己怎么做推广
  • 看网站建设公司的网站案例熊掌号接入wordpress
  • 黄石下陆区建设局网站wordpress如何拖移小工具
  • 宁波网站建设信息网站开发看书
  • 网站建设优化价格北京优化seo排名
  • 微信网站建设公司费用高端网站建设 炫酷
  • 北京网站假设销售找客户最好的app
  • 做外贸需要关注的网站有什么好处宜州设计公司
  • 公司最近想做个网站怎么办陕西科强建设工程有限公司官方网站
  • 生态城门户网站 建设动态it外包收费
  • 网站项目评价老渔哥网站建设公司