明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3117|回复: 21

[源码] [高飞鸟的【越飞越高】像素提取专家]-生成的数据二次压缩

[复制链接]
发表于 2018-8-13 15:42 | 显示全部楼层 |阅读模式
本帖最后由 NetBee 于 2018-8-20 15:04 编辑

[【高飞鸟】] 【飞鸟集】像素提取专家(更新至20130130)
该帖大大的方便了我们在DCL中进行图像显示,丰富了我们的LSP程序。
该程序于2013年就已经发布了,由于太忙,仅当时看了一下,还算好,在论坛中一直置顶的。

当然该数据文件数据很丰富,而且用途也不限于DCL显示。
而我们若仅用于DCL显示的话,则该数据就过于丰富了,在使用过程因为数据量太大,导致我们的程序包也增加很大。
因此,在仅用于DCL的情况下,我们可以进行数据的压缩。以较少的数据量获得一样的显示效果。
压缩原理:
1、同一列中相同RGB值的合并。
2、将RGB值合并成索引值
 合并后格式:(X Y 长度 颜色索引值)

越简单的图压缩效果越明显。大家可以试一下。
我这个压缩前396K,压缩后82K


压缩命令:NBTC_PixelComp
测试命令: 对话框:test CAD:test1

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

评分

参与人数 1明经币 +1 收起 理由
xshrimp + 1 很给力!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2018-8-28 16:24 | 显示全部楼层
本帖最后由 NetBee 于 2018-8-28 16:57 编辑
ynhh 发表于 2018-8-27 09:13
大师的那个ZBBZ我们很多施工员都在用
你这水平太牛了
我都虚心买了你这简化图片的代码学习

2.54赞赏码扫了没有呀?
  1. (and vlst_actPixel
  2.         (/= backcolor oldColor) ;;_不为背景色backcolor
  3.          (setq vlst_actPixel
  4.                   (cons oldColor (cons len vlst_actPixel))
  5.                  vlst_NewImage  (append vlst_NewImage (list (reverse vlst_actPixel)))
  6.           )
  7. )
  8.    






发表于 2018-8-31 19:57 | 显示全部楼层
NetBee 发表于 2018-8-30 23:32
backcolor你赋值了没?
在程序最开始的地方
(setq backcolor 255)

谢谢大师的耐心指点
我也是太笨,难以学会应用
但仍是发自内心的感谢您
你那微信上的赞赏
你知道是谁赏的吗?
如你不知道是谁赏的
那你还是在QQ群中
发动大家赞赏
我一定会积极赞赏
实再不行,我就在这送您明经币如何
谢谢您
发表于 2018-9-3 15:14 | 显示全部楼层
找到原因了。
用楼主的代码压缩后的表的格:
'((指针 45
        (0 0 32 255)
        (1 0 32 255)
.....
  )
)
使用测试代码出错,出错原因找到了
(foreach pt (cdr Image)   =>  (foreach pt (cddr Image)
发表于 2018-8-14 08:07 | 显示全部楼层
不错~~文件大小缩小了好多好多
 楼主| 发表于 2018-8-14 23:13 | 显示全部楼层
若定义了透明色,还可以更小
发表于 2018-8-15 17:03 | 显示全部楼层
为什么提取不了图像并生成数字呢?请版主告知,谢谢!
发表于 2018-8-16 08:42 | 显示全部楼层
自己设计的压缩算法,支持一下
 楼主| 发表于 2018-8-16 14:12 | 显示全部楼层
xieling888 发表于 2018-8-15 17:03
为什么提取不了图像并生成数字呢?请版主告知,谢谢!

这个是针对高飞鸟的程序提取后的LSP文件进行再次压缩。你得先用高飞鸟哈。。。。
发表于 2018-8-16 23:43 | 显示全部楼层
嘿嘿。我自己也弄了一个类似的,我的图大多是在 CAD中做出截屏的。
我将黑色的背景去除。减少了大不分的内容
 楼主| 发表于 2018-8-20 15:01 | 显示全部楼层
本帖最后由 NetBee 于 2018-8-20 15:20 编辑
前生 发表于 2018-8-16 23:43
嘿嘿。我自己也弄了一个类似的,我的图大多是在 CAD中做出截屏的。
我将黑色的背景去除。减少了大不分的内 ...

是呀,原始数据400K,编码压缩到80K,再去了背景,又减少到60K,编译成FAS后40K。
发表于 2018-8-20 19:02 | 显示全部楼层
前生 发表于 2018-8-16 23:43
嘿嘿。我自己也弄了一个类似的,我的图大多是在 CAD中做出截屏的。
我将黑色的背景去除。减少了大不分的内 ...

大师这个去黑背景的
也发来让大家学习一下啊
也还可收点币哈
发表于 2018-8-20 19:04 | 显示全部楼层
NetBee 发表于 2018-8-20 15:01
是呀,原始数据400K,编码压缩到80K,再去了背景,又减少到60K,编译成FAS后40K。

我买了下载来学习
不知你说的透明更小
不知如何透明?
如去除黑色背景。
不知要改那一些代码
请大师指点
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-27 02:42 , Processed in 0.312888 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表