java rgb十六进制数据转图片

本文介绍了一个物联网应用中的图片上传流程,图片经过灰度处理后,以196字节一行的形式传输。每行数据对应图片的一行,总共65行组成完整图片。解析数据时,知道宽度和高度后,将所有数据按行组合,最终形成RGB十六进制的图片。代码示例展示了如何处理这些数据并转换为图像。

描述:需求是通过物联网上传图片,上传的图片是经过灰度处理,算法直接输出的rgb十六进制的数据。最开始不知道宽度和高度,就单纯的把十六进制看成了一个图片数据流这样去处理转成图片,但是这样不行。设备端传输了65次数据一次图片的数据有196个字节,知道了宽度和高度196宽、65高。可以这样去理解一次传的196个字节 就是图片中的一行,要把图片的65行填充完就是完整的图片。十六进制的ff表示白色,00表示黑色。

参考代码:

public static void main(String[] args) throws IOException {
BufferedImage grayImage = new BufferedImage(196, 65, 4);
        int width  = 196;
        int height= 65;
        List<byte[]> listByte = new ArrayList<>(65);

//这里我按照顺序把所有的数据都放到一个字符串里面再按照宽度和高度来分成行。后期都是从数据库中获取

        String src = "6E5A75C1D3D6DBDBDEDEDEDBD3D38F476F5174CAD9DFDFE2E4E2E2DBC8BDB15799CFD6D0D0C9DCDECD8A63737472A9D0DEE2E2E2E2E2E1AC5C6C5B6FAFE2E4E4E4E7E7E4E2DBC457B2D8DEDBDEDBD0DFF0F0F3F3F0F0F0F0F0EAEAE1B26789735F5BBAF3EDF0F0EACCD0CFD9D9D9D97581E2DEE2E2DFDBDEDEEDE7EACF767A837370ABD4E1EDD4B68080867C81A9E7E2E4E2E1E1E1E2E2DEC77BD9E4E4E4E4E2DEDCD8E1C15083626AAFE2EAEAEDEEEEF0EDEDEADFAE5C7B5775D0E7EDEDEDE7DFD9BD6074527FCAD3D6DBDBDBDBDBDCD3D09A4C6F715FBED9DFE2E4E4E2E2DEC8BE90799AD6D9D3D3D3DCDFB8636F786A72C1DBDBE2DFDFE4DEE2D88C5E6D8265D9E4E7E7E7EAE7E4DBC568ACDEDFDFDEDBDCDEE7EDEDF0EDEDF0F0E7E7E2CC648180726C54BFE4EEEDEDE7CCD3D6D9D6D9D9847EE7E2E2E4E2DFDFDEE7E4DE847372756ABED3E1DFC4E7E2D3987D7B7A80CFEAEAE4E7E7E4E4E4DFD083CFE4E4E7E7E4DFD9D8DF9D54755976BBE2EDEDEDEDEAEAEDEAE4E2B85C744B86B6DFE7E7E7E4E2D9B55D615282CFD0D6DBDBDBDBDCD9D6CEA443665564A9D6DEE2E2E4E4DEDEC6C18478A0DED9D9D6D3D9D9A2637673728AD0E4DEE2E2E2E4E1DEDEB259729154C1E4EAEAEAEAEAEADCB872A9DEE1E2E1DEDEDEE4EDEDEDEAEAEAE7DFE4D688708184726960C7E4E7EAEAE7D3D6D3D2D2D3D99581DFE2E4E7E4E2DFDFE4E1BD757D6F60A4CCE2E4E4E7E4E2DEC98B757C7DA9DBE4E7E7EAE7E7E7E4D379CCE7E7EDEAEAE4DCD9DC845A775C6ACCE4EDEAEDEDE7EDE4EAE4E2C16266546FA9DEE4E7E2DBDED2A8605E5189CFD0D6DBDBDBDBD9D6D0CEAA3D66656BA4D6D9DEE2E2E4E2DCC6C57B819CD9DBDBD3D6D9D586736F6C68B4E1E4E4E4E4E4E4E2DBDED061845F699DE4E7E7EDEDEAEAE2BE5ABAE2E2E2E2E2DFE1E2EAEDEAEDEDE7E4DFDBAE78838377707370CFE7E4E4EAE4E2DEDEDBD5D6D99B81E4E7EAE7E4DFDFDFE4D9896D7D5E67BDE4E1E2E4E2E4E7E2E1AF71697270CCE2E2E2E7EDEAEDE7D686CCE7EDEEF0F0E7DCD9D381596C6E71D6E2E7EAEAEAEDEAEAEAE2E2CC63577758A3D3DEE1DEDBD2C9A057575B90CCD6D6D9DBDBDBDBD6D3CFA4426377648BD0D6DBE1DEDEDBD9CEC58170B0DCDBD8D6D3D9D36A77726270BADCDFE2E7E7E4E4E4E2DFD98555796785DFE7EAEDEDEAE7E2C655C0E4EAEAE7E4E2DEE7E4EDEDEDEAE2DFE2C37B7D8A70695BA95DCFE7E4EAEDE4E4E2E2E4E7DED9A985EAF0EDEAE7E7DFDCDFC97569785881E1E2E7E4E7EAE7E2E2DFCC75527C64BADEE2E4EAEAEDEDE7D69EBDEEEEEEF0EDEAD9D6CD73586A887ADBEAE7E7EAEAEDEDEAEAE4E4CD6953705AA1CCC9CDCCC5C4B3925550688BCCD3D3D9D9DBDBD6D6D3CD9E4E656F6C8ACFD3D2D9D6D5CED2D2CA6B96C7C1CED2D6D9D9D26772766272BDDBE2E4E7E4E7E4E7E7E2DE915F4D5783E2E4EAEDEDEDEDE2C356C7E7EAEDEAE7DEE4E4EAEAEDEDE7E2E2DB905C5C6C9183785661D3E7E7EAEDEDEAEAEAF0F3E4DEAC8BEDF3F6F9F9F3EDD9DCB37B908150A7E4E7E7EAEAEDEAE7EADFD9824F8079B5E7E4EAEDEAEDEAE4C4BEE2F1F0F6F3F6EADFD0CF626A809B93E2DDEAEDEDEDEDEDEDEAE7E7D076546A60A1C2A598A09D8C9D7DA45B5A8DC4D0D6D6D9D9DBD9D6D0C99E527C8C5D93CBCCCCD3D9D8DCD9D8CF85B2F9FFFFEDDED9D9D36F667F7761C7E2E2E4E7E7E7E7E7E4E2DCA0C7F5DEFFFFF5F2F3F0EDE4DFC853CBEDEAEAEDEDE4E4E7EAEEEDEAEAF9FCD7C2D6D8C49F858D9172D0E7E7EAEDE7EAEDEDEAEAEAE4AF8BF6F9FFFFFFFFF9DFDC9D73858E53BCEAEDEAEAEDEDEDEAE7E4EA91527FA5C0FCF3FCFFF6EDEAE7BCB6D6EEF9F6F3F3EAE4D6CA5B6D97BAFFFFFFF9EEEEEEEEEDEDEDEAE4D9756568679AC8B7B7B7B09A78816C606277C0CFD0D6D9D6D9D6D9CFCB7C65756C5695CACCCCD6D8D9DCDCDCD3788CDFFCFFE7E2D3D9C97E66857268CAE2E4E4E4E7E7E7E7E4E2DB9C8792A0C4D9C8D1D2DAE2E1DECE5ECFEEEDEAEDE7E4E7E7EDEDEDEAE4EDDFBBA5BAD0EAB870916A75D6EAE7EDEDEAEAEAEDEDEAEDE4BA83F6F3FFFFFFFFF6E2DC7584717365CBE7EDEDF0EAEDEDEAE7E4EDA94E7390BDEEF0F0EAEAEADEDEC998DEEDF3F6F3F0EADFD6C06E738C8CC6FFFCEEEEEDEDEDEDEDEDE7E7E26075624F98C1BCBABCB198698474645F57A9C8D3D9D3D9D3D0D2C2937576505F5D8DCCCCCFD6DEDFDFE2DFD07069BBD7C9D9DECFDED07862668060BDDEE4E4E4E7E2E4E4E4DFE1836A6164A4ACD6D3DEDEDEDBE2D357D0EEEAEAEAE1E1DBE4EAEAEAE4E4E187627767CCE7C765756D62D6E7E7EDEDE7E4E7EAE7EAEAE4AC7BF3F3F3F6F0EFE4E2D06963725F71DBEAEAEDEDEDEDEDEDE7E7E4B846776A78CFC0BEC4C1C4DECEB0A0D6F0F0F0F3F0EAD9D6C06C7859649BEAEDE7EDEAEAEAEDEDEDE7E7DC7461644B97BCBFBAB7B19869736F777A4F84C1CED2D2D4D2CCC6A06C80545E4F728DC6CCCFD6DBDEDEDEDBCF7169B1D6DBD9D0D0DBD67B5B696A5FBBDBDBDFE4E2E4E4E4E2DFD36B55758072ACD3DBE2E4E4E7E2D860CFEAE7EAE1E2E2E1E4EAEAE7E4DBBA776F7784D3E2BF53868859CCE4EDEDEDE4E1E0E1E7E4EADA9F77EDF2EDEAE7DEDFDFC7625B6E587CE4E7EAEAEDEAF0EDEAEAE4E4C04E5B6165C3D9D9DBDEDEDECF8698CCF0F0F0F0EAE4D6D0CA72685F5999DFE7E7EAEAEAEAEDEDEDE4EAD67C4E5C4A9BB9BCBABAB09A65715F6F715D6498C2D4D3C9C9BC9D64606B6464505F9FC5C8CCD6D6D8DBDBDBCB7065B1D3CED0D0D0DCDF8861676A5BADD6DBDEE1E4E4E4E7E2DBC6635866865AACDBD9E4E4E7E7EAD378C8E7E7E7E7E7E4E1E4EAE7E4E2D0707661ACB9E2DFBC538A5C64D0E7EDEDEAE7D3D1D1D0D4E2DE8983EAEDF0EDEAE4DEDCC3575C6C5582E4EAEAEDEDF0F0EDEDEAE7E4C9336C5F5BBFD9D9DBDEDEDED0828ECCF0EDF0EAE4E4D3D9C76958675F96E2E7EAEAEDEDEDEDEDEAE7E7D37F3F555194BDBAB6B2AA946C6C6957706268627890ACB28F716964515C5E654C5D9CC8C3CBCED3D3D8DBD2C5746BAFCED3CFCDCCDEDCA8698F875A9ACFD9E2E1E2E2E2DBDBD1AB71605C5859B3D6D9E2E7E4E4E4CE64C9E2E2E4E1D8D8D8E7E7E7E2DBA56F7571A0E1E1DEB14862565FDEE7EDEDEAE7CCD9D8D8DBDEDE8C84EDEDF0EDE7E2DED9BF5D55645981E7EAEDEEEEF0F0F0F0EAE7E4C73F696058BADCDBDBDBDBE1D07874D3EAEDEAEAEAE2D6D6C1585856778FE4EAE7EDEDEDEDEDEDEDEDE4D376434E5E95BDBAB3B0A78F6F73719665576E6E4A4F4C506B65667F99764E5851609FCCC5C5C8CDD0CFD9D0C6607BA0CFCCCCCCC9DFDBCC9490939482C6D3D8D6DBD7D2D2CEC29186908A8065AED6DBDBE2E2E2DECE5AC3E2E1E2E1DEDEDCE7E4E2E1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值