日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

java 如何調(diào)用Python文件包括傳參

瀏覽:25日期:2022-07-27 17:07:13

最近在和我的小伙伴們做一個物體識別的小程序,主要是他通過深度學(xué)習(xí),然后訓(xùn)練出了一個模型,只要向模型傳圖片的路徑,即可得到識別的結(jié)果,

然后我主要負(fù)責(zé)做服務(wù)器和通過java調(diào)用他的模型,簡單的說就是在java環(huán)境下調(diào)用Python腳本,

主要有兩個方式

第一個是通過jython,這個方法不太好用,當(dāng)Python用到第三方庫的時候,由于jython不可能涵蓋所有python第三方類庫,

所以建議用第二種Runtime.getRuntime()開啟進(jìn)程來執(zhí)行python腳本文件

String[] arguments = new String[] {'python','D:ccc1.py',str};//指定命令、路徑、傳遞的參數(shù)try { Writer out = response.getWriter(); //獲得HttpServletResponse輸出流對象 Process process = Runtime.getRuntime().exec(arguments);//開啟進(jìn)程來執(zhí)行腳本文件 BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));//獲取字符輸入流對象 String line = null; while ((line = in.readLine()) != null) {JSONArray Resulet = JSONArray.fromObject(util.DataHandle(line.toString()));//讀取到結(jié)果(一行文字)進(jìn)行數(shù)據(jù)處理 String json = Resulet.toString(); out.write(json);//使用輸出流對象向小程序發(fā)送字符數(shù)據(jù) } out.close(); in.close(); } catch (Exception e) { e.printStackTrace();}

第一行代碼傳遞的參數(shù)str就是圖片的路徑(我這實(shí)例代碼只傳遞一個參數(shù),如果傳遞多個參數(shù)直接在str,后面加,格式都是一樣,Python代碼接收參數(shù)也是不一樣,接著往下看),剩下的代碼我都上了注釋

from keras.models import load_modelimport numpy as npfrom keras.preprocessing import imageimport sysimport redef predict(pic_dir): model = load_model('D:/ccc/model.h5') images = image.load_img(pic_dir, target_size=(32,32)) images = image.img_to_array(images) images = np.expand_dims(images, axis=0) images=np.array(images,dtype=int) images_normalize=images.astype('float32')/255.0pre_y=model.predict(images_normalize) pre_y=pre_y.reshape(-1) np.set_printoptions(suppress=False) pre_y=[pre_y[i]*100 for i in range(len(pre_y))] pre_y=[str(pre_y[i]) for i in range(len(pre_y))]for i in range(len(pre_y)):if pre_y[i].find(’e’,0,len(pre_y[i]))!=-1: wei=int(pre_y[i][len(pre_y[i])-1])-1 pre_y[i]=re.sub(r’e-.*$’,’’,pre_y[i]) pre_y[i]=re.sub(r’[^0-9]’,’’,pre_y[i]) for j in range(0,wei): pre_y[i]=’0’+pre_y[i] pre_y[i]=’0’+’.’+pre_y[i] pre_y=[pre_y[i]+'%' for i in range(len(pre_y))] return pre_yprediction=predict(sys.argv[1])print(prediction)

上面是Python代碼,prediction=predict(sys.argv[1])代碼里面的sys.argv[1]就是接收傳遞過來的參數(shù)str,如果多個參數(shù)就以此類推接收

java 如何調(diào)用Python文件包括傳參

小程序接收到數(shù)據(jù)并輸出到控制臺

java 如何調(diào)用Python文件包括傳參

然后就是顯示數(shù)據(jù),給我小伙伴的深度學(xué)習(xí)點(diǎn)個贊!準(zhǔn)確率還是挺高的

補(bǔ)充:Java調(diào)用Python文件

有時候我們想要通過java調(diào)用一個python文件,而這個python文件又必須在特定的virtualenv虛擬環(huán)境下才能運(yùn)行。如果直接將這個python文件所需要的包安裝到python系統(tǒng)環(huán)境下難免有些暴力

我想到了如下方法解決這個問題:

創(chuàng)建虛擬環(huán)境后,如果虛擬環(huán)境的文件夾叫做env,我們平時激活虛擬環(huán)境的命令是 source env/bin/activate 。在bin目錄中還有一個文件叫做activate_this.py,我們通過這個文件切換到虛擬環(huán)境,在一個python文件(假設(shè)叫a.py)中調(diào)用該文件(activate_this.py),再書寫想要調(diào)用的目標(biāo)python文件,再由Java調(diào)用a.py即可完成指定虛擬環(huán)境下的python文件調(diào)用。

python文件名為a.py,代碼如下

import osactivate_this = ’path/to/activate_this.py’execfile(activate_this, dict(__file__=activate_this))os.system('python target.py')

java代碼

import java.io.BufferedReader;import java.io.InputStreamReader; public class Test { public static void main(String[] args) { try { System.out.println('start'); Process pr = Runtime.getRuntime().exec('python /home/kui/桌面/a.py'); BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream())); String line; while ((line = in.readLine()) != null) { System.out.println(line); } in.close(); pr.waitFor(); System.out.println('end'); } catch (Exception e) { e.printStackTrace(); } }}

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。如有錯誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
中文字幕在线官网| 亚洲精品护士| 欧美日韩 国产精品| 免费国产亚洲视频| 免费一级片91| 蜜桃久久久久久| 日韩在线卡一卡二| 亚洲啊v在线免费视频| 亚洲三级在线| 国产三级一区| 成人免费一区| 久久在线免费| 女同性一区二区三区人了人一| 亚洲国产一区二区在线观看| www成人在线视频| 99在线观看免费视频精品观看| 亚洲尤物在线| 日本欧美韩国一区三区| 久久99影视| 欧美一级鲁丝片| 伊人久久亚洲热| 日本中文字幕视频一区| 国产精品高潮呻吟久久久久| 日韩欧美一区二区三区免费看| 欧美精品一二| 亚洲欧洲av| 麻豆精品蜜桃视频网站| 免费在线小视频| 首页国产欧美日韩丝袜| 日韩在线成人| 粉嫩av一区二区三区四区五区| 88xx成人免费观看视频库| 国产亚洲福利| 国产欧美一区二区三区国产幕精品| 国内精品伊人| 合欧美一区二区三区| 日韩精品福利一区二区三区| 久久免费视频66| 欧美二三四区| 视频精品一区二区| 国产精品一卡| 欧美日韩国产一区精品一区| 欧美亚洲网站| 久久国产免费| 免费精品视频| 国产日韩欧美高清免费| 成人片免费看| 亚洲精品日本| 深夜福利视频一区二区| 免费国产亚洲视频| 黄色网一区二区| 美女尤物久久精品| 久久精品国产在热久久| 亚洲精品中文字幕乱码| 国产精品一站二站| 91久久中文| 久久精品理论片| 亚洲综合精品| 国产一区二区三区不卡视频网站 | 久久一区欧美| 蜜桃av一区二区三区电影| 国产精品对白| 女同性一区二区三区人了人一| 国产麻豆一区二区三区精品视频| 欧美日韩中文一区二区| 国产精品一国产精品k频道56| 午夜精品亚洲| 国产夫妻在线| 国产欧美日韩亚洲一区二区三区| 国产色综合网| 亚洲天堂一区二区| 久久av中文| 日韩综合小视频| 99热精品久久| 国产成人1区| 国产欧美日韩影院| 红桃视频亚洲| 日韩在线免费| 精品一区二区三区视频在线播放 | 日韩成人午夜精品| 国产精品免费看| 午夜精品成人av| 免费亚洲一区| 亚洲精品美女| 国产一区二区精品| 亚洲高清不卡| 九色porny丨国产首页在线| 国产精品网在线观看| 亚洲欧美日本国产| 欧美精品九九| 久久婷婷一区| 天堂中文av在线资源库| 久久不见久久见中文字幕免费| 日本在线视频一区二区| 亚洲一区久久| 激情久久中文字幕| 国产伦久视频在线观看| 国产精品黄色| 91精品国产自产精品男人的天堂| 亚洲一区成人| 国产真实久久| 日韩精品看片| 国产精品久久久久久久久久10秀| 国产欧美一区二区色老头| 亚洲欧洲美洲国产香蕉| 久久福利精品| 久久av一区二区三区| 91久久久久| 亚洲免费成人| 日韩午夜黄色| 久色成人在线| 亚洲麻豆一区| 日韩高清三区| 日韩不卡手机在线v区| 亚州精品视频| 日本不卡一二三区黄网| 日韩精品一区二区三区中文在线| 最新亚洲国产| 视频一区日韩精品| 噜噜噜躁狠狠躁狠狠精品视频| 伊人久久亚洲热| 免费视频久久| 亚洲精品护士| 日日夜夜免费精品| 欧美日韩亚洲国产精品| 国产精品夜夜夜| 麻豆精品99| 欧美黑人巨大videos精品| 婷婷国产精品| 国产一区欧美| 国产视频欧美| 亚洲精品一级| 国产伦精品一区二区三区视频| 国产欧美日韩影院| 青草av.久久免费一区| 日韩精品久久久久久久软件91| 欧美日韩a区| 麻豆精品国产91久久久久久| 精品中文字幕一区二区三区| 国产粉嫩在线观看| 国产一区观看| 视频精品一区二区| 91精品在线免费视频| 久久香蕉精品香蕉| 日韩欧美一区二区三区在线观看| 欧美va天堂| 亚洲日韩中文字幕一区| 欧美日韩一区二区高清| 久久精品国产久精国产| 日韩免费一区| 亚洲欧洲一区二区天堂久久| 亚洲精品成a人ⅴ香蕉片| 欧美黄色一区| 久久久精品五月天| 热久久国产精品| 国产精品三级| 日韩精品免费一区二区在线观看| 夜夜嗨一区二区三区| 欧美啪啪一区| 日韩精品dvd| 久久亚洲国产精品一区二区| 日韩高清电影免费| 麻豆视频在线观看免费网站黄| 免费视频亚洲| 青草国产精品| 精品国产精品国产偷麻豆| 久久久久欧美精品| 天堂久久一区| 日韩欧美精品综合| 四虎在线精品| 极品av在线| 亚洲专区视频| 久久精品国内一区二区三区| 午夜国产欧美理论在线播放| 91精品尤物| 欧美日韩一区二区三区视频播放| 日韩在线观看中文字幕| 麻豆成全视频免费观看在线看| 日韩中文字幕不卡| 国产一区日韩| 一区在线视频观看| 久久女人天堂| 在线精品一区| 日韩中文欧美| 日韩二区三区在线观看| 久久毛片亚洲| 日本不卡高清| 视频福利一区| 欧美精品三级在线| 欧美另类综合| 国产成人精品亚洲线观看| 日韩专区欧美专区| 精品久久久网| 午夜性色一区二区三区免费视频| 在线看片国产福利你懂的| 亚洲网址在线观看| 日本不卡免费高清视频在线| 日本成人在线不卡视频| 亚洲一本视频| 国产中文字幕一区二区三区|