|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
程序实现文字转化成图片
8 G$ d9 K3 P) L* c9 C% @ W% \rgb三通道中,R通道存放文本信息,G通道产生中心涣散圆形,B通道产生全图小涣散圆形) T0 a2 w4 |4 P8 v3 ]' F" s) x
主要应用的是unicode2native指令,非加密转换
: ]- }2 c! w! q9 m. a- y, @, }
' c: _' ]- A2 e! _ o7 l% x0 E. O, q
- {9 f1 l+ b4 z, B5 x* M
& b' _- ^0 G) Z3 e8 hfunction word2picmain()
" x9 S/ i: Z) H3 W4 J! W- |%程序实现文字转化成图片. `. U1 y: q: S) s" B3 b
%%//////////////////////////////////////////////////////////////////////3 [1 ~8 |/ f; U9 m7 Y+ x8 g
%rgb三通道中,R通道存放文本信息,G通道产生中心涣散圆形,B通道产生全图小涣散圆形9 n1 d4 a. O5 G: _
%主要应用的是unicode2native指令,非加密转换% S; y, \$ Y2 c) ^, k
" k5 i- a7 F9 s
%%//////////////////////////////////////////////////////////////////////) d% ~* Q9 O, A2 ~" G1 w5 l+ D
clc
- {" m) \$ b/ C4 E' vclear all
, i5 [6 |, `% J0 L7 D9 C; T6 Va='七夕节快乐O(∩_∩)O哈哈~';%你想要转换的文字
, e8 j! N D. |2 ib=makepic(a,50,50);2 w4 ~; {, v; C+ o: g: |
imshow(b), I+ \& v; ^' c& a: t$ V
imwrite(b,'my.bmp'); G z$ e; ~' @& w# Q: S2 L
mb=double(imread('my.bmp'))/255;%生成的图像是1~255,而matlab归一化成了0~1,所以要换回来8 [. |7 J' g( }2 Q
txt=makeword(mb,50,50)
: @- |/ ^# k8 ~* U7 [- `end
8 t6 _/ D+ u$ F5 r. {2 h, i( i& \3 O%%//////////////////////////////////////////////////////////////////////9 L! u p8 ]" e9 o
function =makepic(txt,cx,cy)% u' R0 Z# [ s8 ^, e
%[cx,cy]是图片中存放文本数据长度信息位置坐标
4 {3 N9 o9 l( o" }9 d! r/ z8 U0 N% Ma=txt;
3 d( ~8 T7 J% L; ^ca=unicode2native(a,'UTF-16BE');% l4 F: G" F; x
b=zeros(100,100,3);
/ P! V0 k7 n/ }" q/ d' x% snum=size(ca,2);
3 a! Y. c. G, {1 xst=0;9 \* b1 S F% I9 V% a3 `: V& t/ J
for i=1:100
1 E9 g* x. _. m; T for j=1:100
3 h* j# K% n( T0 z4 @ sp=ceil(mod(st,num))+1; 6 @9 S8 K. E) j; T( h
b(i,j,1)=double(ca(sp))/255;) o: g) A: c6 K" Y
b(i,j,2)=1-((i-50)^2+(j-50)^2)/5000;& `" E: _' i* c; }
rcx=ceil(i/8)*8-4;
2 e7 S0 n0 d& @. c# h5 B rcy=ceil(j/8)*8-4;
5 k0 c `. I. g b(i,j,3)=(((i-rcx)^2+(j-rcy)^2)/32);) ~+ Z; r3 L0 I, v, G
st=st+1;. d! K" f$ Z) a6 d
end
' l ~# P- o0 t9 Y! Z. J+ Dend
" m5 Y! z: n! e9 hb(cx,cy,2)=1-(ceil(num/100)-1)/10;5 _% |/ f; N3 E$ U, a( \! d
b(cx,cy,3)=1-mod(num,100)/100;
+ t' J& u+ @4 I" R. Yend
+ y$ h1 R |* F, \4 v0 B5 V1 ]! _9 G2 P) n. |
%%//////////////////////////////////////////////////////////////////////
' Y2 L, O$ V4 Z0 @' J, [$ yfunction [txt]=makeword(img,cx,cy)
+ J0 A7 |' s( V- R4 e& t) L4 Snum=uint16((1-img(cx,cy,3))*100+(1-img(cx,cy,2))*100*10)3 K1 `% k6 E" \) q' w
lsb=zeros(100,100);: D- l- j4 |9 z$ p7 z& w, D! j3 F
nsp=[];& V2 k& e+ s1 I1 Z
for i=1:100
. Y7 \! A4 F8 B7 C9 T$ a% T: k for j=1:100
/ V/ G% z! F. X) v: q2 I nsp=[nsp img(i,j,1)*255];# F. q) z# J- K4 N- s& X2 T
end
; }* T! M' D: u& [$ g: V1 Xend0 O+ Z" c. ^6 j p7 ?. r9 x- O& R
txt=native2unicode(nsp(1:num),'UTF-16BE')
. o1 x$ b2 f5 ]/ Q/ ~6 `" Oend
1 T" @9 i) Z5 F( ~3 y: Y' Q%%//////////////////////////////////////////////////////////////////////
2 ~ F0 a* y9 d6 [( F' }- {+ V! N$ T8 e% F/ U
|
|