当前位置:   article > 正文

AI识别(Springboot+AI)二_spring ai

spring ai

案例已经开源:点击打开链接

如有疑问加 QQ群联系我:278947305 

继上篇说文字识别使用网络图片 这里讲使用本地图片

  1. /**
  2. * 文件上传解析
  3. * @methodsDescription:
  4. * @methodName: rec
  5. * @param file
  6. * @return
  7. * @author: singleton-zw
  8. * @return: R
  9. */
  10. @RequestMapping(value="/recognLocal" ,method = {RequestMethod.GET,RequestMethod.POST})
  11. @ResponseBody
  12. public R rec(@RequestParam("file") MultipartFile file){
  13. if (file.isEmpty()) {
  14. return R.ok().put("orc","文件不能为空");
  15. }
  16. String path = orc.getUpladfile()+file.getOriginalFilename();
  17. String relst = "";
  18. try {
  19. // 这里只是简单例子,文件直接输出到项目路径下。
  20. // 实际项目中,文件需要输出到指定位置,需要在增加代码处理。
  21. // 还有关于文件格式限制、文件大小限制,详见:中配置。
  22. BufferedOutputStream out = new BufferedOutputStream(
  23. new FileOutputStream(path));
  24. out.write(file.getBytes());
  25. out.flush();
  26. out.close();
  27. byte[] imgData = FileUtil.readFileByBytes(path);
  28. String imgStr = Base64Util.encode(imgData);
  29. relst = URLEncoder.encode("image", "UTF-8") + "=" + URLEncoder.encode(imgStr, "UTF-8");
  30. /**
  31. * 线上环境access_token有过期时间, 客户端可自行缓存,过期后重新获取。
  32. */
  33. String accessToken = AccessToken.getAuth(orc.getOcrClientId(),orc.getOcrClientSecret());
  34. String result = HttpUtil.post(ConfigURL.OrcUrl, accessToken, relst);
  35. Result fromJson = GsonUtils.fromJson(result, Result.class);
  36. List<Result.Word> data = fromJson.getWords_result();
  37. String w = "";
  38. for (Result.Word word : data) {
  39. w += word.getWords()+"<br>";
  40. }
  41. return R.ok().put("orc", w);
  42. } catch (Exception e) {
  43. e.printStackTrace();
  44. }
  45. return R.ok().put("orc", "失败");
  46. }

在页面中处理文件上传

  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  4. <script src="static/js/ajaxupload.js"></script>
  5. </head>
  6. <body>
  7. <div align="center">
  8. <h1>AI文字解析解析</h1>
  9. <hr>
  10. <form name="upform" action="" id="myForm">
  11. <input type="button" value="上传文件解析" id="upload" /><br />
  12. <hr>
  13. <br> 输入图片URL地址:<input type="text" name="urlNet" id="urlNet"
  14. size="100""> <br>
  15. <br> <input type="button" value="网络图片解析" id="url" /><br />
  16. </form>
  17. <div id="tip"></div>
  18. </div>
  19. </body>
  20. <script type="text/javascript" src="static/js/jquery-3.1.1.min.js"></script>
  21. <script type="text/javascript">
  22. new AjaxUpload('#upload', {
  23. action: 'ai/recognLocal',
  24. name: 'file',
  25. autoSubmit:true,
  26. responseType:"json",
  27. onSubmit:function(file, extension){
  28. },
  29. onComplete : function(file, r){
  30. if(r.code == 0){
  31. document.getElementById("tip").innerHTML= r.orc
  32. }else{
  33. document.getElementById("tip").innerHTML="解析失败"
  34. }
  35. }
  36. });
  37. $("#url").click(function () {
  38. $.ajax({
  39. type: "POST", //提交的方法
  40. url:"/ai/recognNet", //提交的地址
  41. data:$('#myForm').serialize(),// 序列化表单值
  42. async: false,
  43. error: function(request) { //失败的话
  44. document.getElementById("tip").innerHTML="解析失败"
  45. },
  46. success: function(data) { //成功
  47. $("#tip").html(data.orc);
  48. }
  49. });
  50. });
  51. </script>
  52. </html>

具体代码看案例吧

AI识别(Springboot+AI)一 点击打开链接

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/366777
推荐阅读
相关标签
  

闽ICP备14008679号