|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
程序实现文字转化成图片
6 b u0 Q/ a" |2 Orgb三通道中,R通道存放文本信息,G通道产生中心涣散圆形,B通道产生全图小涣散圆形) Y3 ]: @' w G+ L. k0 H
主要应用的是unicode2native指令,非加密转换
. x( U+ A8 h2 r; {! A: h4 w! M6 z) @6 [6 i. m
+ J' { n. e0 l& Z# K, j4 f3 A: k
9 ^# ~4 O9 }' _0 d, z. D
( N2 \4 j% [0 [$ g2 efunction word2picmain()
) q9 T$ Y: Y, K* Y; j. Y%程序实现文字转化成图片
. g1 u# P: n5 k y w%%//////////////////////////////////////////////////////////////////////8 E. C) D% V% c# z: d/ @+ y
%rgb三通道中,R通道存放文本信息,G通道产生中心涣散圆形,B通道产生全图小涣散圆形
) P3 {& C5 `5 s' m# `8 O. P%主要应用的是unicode2native指令,非加密转换
. \1 J' @& i4 Z6 B+ v' Z- L9 Z) M) t Q2 o* G% X& ]
%%//////////////////////////////////////////////////////////////////////* J5 ?3 }0 k9 ?8 f
clc6 m, G$ [: c* M1 }# p! ^: {
clear all7 p- g* s8 l) O( `
a='七夕节快乐O(∩_∩)O哈哈~';%你想要转换的文字
% Y' y8 f! K, g) r) k. Y2 z% Sb=makepic(a,50,50);, j. @! s, L H+ n/ v/ {" `
imshow(b)
5 s [4 d c: R# wimwrite(b,'my.bmp');6 X2 b! [: t3 T
mb=double(imread('my.bmp'))/255;%生成的图像是1~255,而matlab归一化成了0~1,所以要换回来0 j$ ~& w; ]) N) Z$ z
txt=makeword(mb,50,50)6 l* h4 H9 P( g% W6 ^! u
end
; l% f5 X% a! r. Y%%//////////////////////////////////////////////////////////////////////
4 M. A# y- ?5 y7 S' u9 E/ Bfunction =makepic(txt,cx,cy)
* t, r. u" o! j* d- m. s%[cx,cy]是图片中存放文本数据长度信息位置坐标# S) Q* G& E9 e6 A% K
a=txt;' a: |* z: b8 J+ I9 R
ca=unicode2native(a,'UTF-16BE');
" `) V, M" [* p: Kb=zeros(100,100,3);) N5 L* w& g# ?; \9 d
num=size(ca,2);: `. \8 ]6 L( s: t% W
st=0;: N5 E$ ?# G$ ?. ?, U3 e
for i=1:100
/ K0 Z" X7 j- ]* q3 | for j=1:1006 I% t4 a( M3 q* h, C3 _. ?# l; M$ x
sp=ceil(mod(st,num))+1; d# a3 G7 C* x5 e
b(i,j,1)=double(ca(sp))/255;
; g1 _0 l% \& \6 b* e b(i,j,2)=1-((i-50)^2+(j-50)^2)/5000;
6 J0 W6 A& O+ u/ i0 k a rcx=ceil(i/8)*8-4;6 m8 [/ h& b* P9 w1 p) o
rcy=ceil(j/8)*8-4;2 c2 w$ e3 \. p, U) Q& }
b(i,j,3)=(((i-rcx)^2+(j-rcy)^2)/32);
8 y- p5 e) n% q8 L st=st+1;
# E4 N: Q' [8 M3 d/ r end7 k- |& w3 y/ k0 D" f) @
end q' j) ~7 o/ F
b(cx,cy,2)=1-(ceil(num/100)-1)/10;
' ?1 K% a! b& S. ]- a9 l5 Ab(cx,cy,3)=1-mod(num,100)/100;' d v+ ?$ W& ^0 v* }/ G
end
# Y4 B/ v& D4 T
& E. |6 O/ K% H8 A# l I9 E! T) N%%//////////////////////////////////////////////////////////////////////
4 P6 y* n, ~) Pfunction [txt]=makeword(img,cx,cy)) G* |1 z1 y; Y! ^6 a- k
num=uint16((1-img(cx,cy,3))*100+(1-img(cx,cy,2))*100*10)
/ O" y% ~" X3 x7 }* t% h* ]lsb=zeros(100,100);
6 p+ c: j& [/ ?6 K7 A4 l9 g5 r2 Hnsp=[];( {. @: B( D; d# y- ?2 x* Q& S
for i=1:1003 Z o# j4 W2 l S7 Y6 L
for j=1:1005 Z( v7 V6 L y- L% l7 Z
nsp=[nsp img(i,j,1)*255];
. S, h: ~& n7 P( k8 d$ J end
" K* f# n5 r1 T9 dend2 U0 B. h6 }2 N: G
txt=native2unicode(nsp(1:num),'UTF-16BE')" l0 @6 N. u& B. X q
end/ I( \7 D* ~ m" z2 Z* ?6 l
%%//////////////////////////////////////////////////////////////////////
3 B4 K3 l' {( V8 ~8 b4 q' V
4 u3 }, O5 T) G- G6 r4 y8 { |
|