本發(fā)明涉及圖片處理
技術(shù)領(lǐng)域:
:,特別是涉及一種圖片上傳方法和一種圖片上傳裝置。
背景技術(shù):
::隨著移動(dòng)終端的智能化,很多APP(application)都能上傳圖片以進(jìn)行存儲(chǔ)或者顯示。該圖片比如照片等圖片。在先技術(shù)中,上傳的圖片一般都是直接上傳,如果圖片很大,則當(dāng)用戶在移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)比如2G、3G等網(wǎng)絡(luò)中時(shí),則會(huì)耗費(fèi)相當(dāng)多的流量,并且可能產(chǎn)生資費(fèi)。技術(shù)實(shí)現(xiàn)要素:鑒于上述問(wèn)題,提出了本發(fā)明以便提供一種克服上述問(wèn)題或者至少部分地解決上述問(wèn)題的圖片上傳方法和相應(yīng)的圖片上傳裝置。依據(jù)本發(fā)明的一個(gè)方面,提供了本發(fā)明公開了一種圖片上傳方法,包括:接收?qǐng)D片上傳指令;判斷圖片的大小是否超過(guò)第一閾值;如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;對(duì)所述待上傳圖片進(jìn)行編輯;在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;將壓縮后的圖片上傳。優(yōu)選地,所述對(duì)所述待上傳圖片進(jìn)行編輯包括:通過(guò)預(yù)設(shè)的剪裁模板,對(duì)所述待上傳圖片進(jìn)行剪裁。優(yōu)選地,在通過(guò)預(yù)設(shè)的剪裁模板,對(duì)所述待上傳圖片進(jìn)行剪裁之前,還包括:識(shí)別所述待上傳圖片的內(nèi)容;查找與所述內(nèi)容匹配的剪裁模板。優(yōu)選地,所述對(duì)所述待上傳圖片進(jìn)行編輯的步驟,包括:讀取預(yù)設(shè)的至少一個(gè)剪裁模板,并在第一窗口中進(jìn)行顯示;根據(jù)用戶在第一窗口中選擇的剪裁模板,對(duì)所述圖片進(jìn)行編輯。優(yōu)選地,所述對(duì)所述待上傳圖片進(jìn)行編輯的步驟,包括:在所述圖片編輯模式的編輯界面中,對(duì)所述圖片進(jìn)行編輯操作。優(yōu)選地,所述判斷圖片的大小是否超過(guò)第一閾值的步驟之前,還包括:判斷當(dāng)前的網(wǎng)絡(luò)是否為移動(dòng)數(shù)據(jù)網(wǎng)絡(luò);如果是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),則進(jìn)入判斷圖片的大小是否超過(guò)第一閾值的步驟。優(yōu)選地,所述在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮的步驟,包括:以編輯后的圖片作為文件,調(diào)用文件壓縮接口對(duì)所述圖片進(jìn)行壓縮,得到壓縮文件;進(jìn)一步的,所述將壓縮后的圖片上傳包括:以壓縮文件的形式,將圖片上傳。優(yōu)選地,在將壓縮后的圖片上傳之后,還包括:在服務(wù)器側(cè),調(diào)用文件解壓縮接口對(duì)收到的壓縮文件進(jìn)行解壓縮,并將解壓縮得到的圖片放入指定位置。依據(jù)本發(fā)明的另外一個(gè)方面,還公開了一種圖片上傳裝置,包括:指令接收模塊,適于接收?qǐng)D片上傳指令;大小判斷模塊,適于判斷圖片的大小是否超過(guò)第一閾值;編輯模塊啟動(dòng)模塊,適于如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;編輯模塊,適于對(duì)所述待上傳圖片進(jìn)行編輯;壓縮模塊,適于在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;上傳模塊,適于將壓縮后的圖片上傳。優(yōu)選地,所述編輯模塊包括:第一編輯模塊,適于通過(guò)預(yù)設(shè)的剪裁模板,對(duì)所述待上傳圖片進(jìn)行剪裁。優(yōu)選地,在第一編輯模塊之前,還包括:內(nèi)容識(shí)別模塊,適于識(shí)別所述待上傳圖片的內(nèi)容;模板查找模塊,適于查找與所述內(nèi)容匹配的剪裁模板。優(yōu)選地,所述編輯模塊包括:模板讀取模塊,適于讀取預(yù)設(shè)的至少一個(gè)剪裁模板,并在第一窗口中進(jìn)行顯示;模板剪裁模塊,適于根據(jù)用戶在第一窗口中選擇的剪裁模板,對(duì)所述圖片進(jìn)行編輯。優(yōu)選地,所述編輯模塊包括:剪裁模塊,適于在所述圖片編輯模式的編輯界面中,對(duì)所述圖片進(jìn)行編輯操作優(yōu)選地,所述編輯模塊啟動(dòng)模塊之前,還包括:網(wǎng)絡(luò)判斷模塊,適于判斷當(dāng)前的網(wǎng)絡(luò)是否為移動(dòng)數(shù)據(jù)網(wǎng)絡(luò);如果是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),則進(jìn)入大小判斷模塊。優(yōu)選地,所述壓縮模塊包括:文件壓縮模塊,適于以編輯后的圖片作為文件,調(diào)用文件壓縮接口對(duì)所述圖片進(jìn)行壓縮,得到壓縮文件;進(jìn)一步的,所述上傳模塊包括:文件上傳模塊,適于以壓縮文件的形式,將圖片上傳。優(yōu)選地,還包括在服務(wù)器側(cè)的解壓模塊,適于調(diào)用文件解壓縮接口對(duì)收到的壓縮文件進(jìn)行解壓縮,并將解壓縮得到的圖片放入指定位置。依據(jù)本發(fā)明的另外一個(gè)方面,還公開了一種圖片上傳設(shè)備,包括:存儲(chǔ)器和處理器;所述存儲(chǔ)器用于存儲(chǔ)可執(zhí)行代碼;所述處理器用于執(zhí)行所述可執(zhí)行代碼,所述可執(zhí)行代碼執(zhí)行包括以下步驟的方法:接收?qǐng)D片上傳指令;判斷圖片的大小是否超過(guò)第一閾值;如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;對(duì)所述待上傳圖片進(jìn)行編輯;在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;將壓縮后的圖片上傳。根據(jù)本發(fā)明的一種圖片上傳方法,可以在接收到圖片上傳指令后,對(duì)于大小超過(guò)第一閾值,如果超過(guò)第一閾值,則可以先對(duì)所述圖片進(jìn)行編輯,然后在對(duì)編輯后的圖片進(jìn)行壓縮上傳,由此解決了由于圖片太大,導(dǎo)致占用流量多,以及占用帶寬多的問(wèn)題,取得了可以在一個(gè)上傳流程中,對(duì)圖片先編輯再壓縮,降低圖片大小,從而降低流量的占用以及降低網(wǎng)絡(luò)帶寬的占用的有益效果。上述說(shuō)明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說(shuō)明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式。附圖說(shuō)明通過(guò)閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種圖片上傳方法的步驟流程圖;圖2示出了根據(jù)本發(fā)明另一個(gè)實(shí)施例的一種圖片上傳方法的步驟流程圖;圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種圖片上傳裝置的結(jié)構(gòu)示意圖圖;圖4示出了根據(jù)本發(fā)明另一個(gè)實(shí)施例的一種圖片上傳系統(tǒng)的結(jié)構(gòu)示意圖圖;以及圖5示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種圖片上傳設(shè)備的結(jié)構(gòu)示意圖圖。具體實(shí)施方式下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。實(shí)施例一參照?qǐng)D1,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種圖片上傳方法實(shí)施例的步驟流程圖,具體可以包括如下步驟:步驟110,接收?qǐng)D片上傳指令;本發(fā)明實(shí)施例可以應(yīng)用于客戶端中,比如手機(jī)等移動(dòng)終端中。當(dāng)用戶在某個(gè)APP中觸發(fā)了對(duì)一個(gè)圖片的圖片上傳指令,本發(fā)明的客戶端則會(huì)接收到該圖片上傳指令。在本發(fā)明實(shí)施例中,該圖片上傳指令可以為用戶點(diǎn)擊上傳按鈕后,從圖片庫(kù)中選擇了一張或多張待上傳圖片,點(diǎn)擊確認(rèn)后的圖片上傳指令。其已經(jīng)確認(rèn)了對(duì)哪些圖片進(jìn)行上傳。本發(fā)明實(shí)施例中,則攔截正常流程下對(duì)圖片的上傳過(guò)程,先進(jìn)入步驟120。優(yōu)選地,在步驟120之前,還包括:步驟112,判斷當(dāng)前的網(wǎng)絡(luò)是否為移動(dòng)數(shù)據(jù)網(wǎng)絡(luò);如果是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),則進(jìn)入步驟120;在實(shí)際應(yīng)用中,客戶端可能當(dāng)前接入的不是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),比如接入的是wifi網(wǎng)絡(luò),而wifi網(wǎng)絡(luò)基本是沒(méi)有流量限制的,因此,對(duì)于大圖片來(lái)說(shuō),對(duì)流量沒(méi)有太大影響,可以不對(duì)待上傳圖片進(jìn)行后續(xù)處理,直接按照正常上傳邏輯將圖片上傳至服務(wù)器。比如客戶端與服務(wù)器建立tcp連接,然后將圖片轉(zhuǎn)換為數(shù)據(jù)流,寫入tcp報(bào)文的數(shù)據(jù)區(qū),然后以post請(qǐng)求的方式發(fā)送到服務(wù)器中。當(dāng)然也可以采用其他常用的方式上傳到服務(wù)器中,本發(fā)明不對(duì)其加以限制。而移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),比如2G/3G/4G等網(wǎng)絡(luò),其都有流量限制,超過(guò)流量則會(huì)收費(fèi)。因此需要進(jìn)入步驟120,對(duì)待上傳圖片進(jìn)行后續(xù)處理。步驟120,判斷圖片的大小是否超過(guò)第一閾值;如果超過(guò)第一閾值,則進(jìn)入步驟130。圖片上傳指令指向的待上傳圖片,則讀取圖片的大小,判斷該圖片的大小是否超過(guò)預(yù)設(shè)的第一閾值。比如可設(shè)置第一閾值為500k,那么當(dāng)讀取到圖片的大小為800k時(shí),則該圖片超過(guò)了第一閾值,需要進(jìn)入步驟130。對(duì)于讀取圖片的大小,可以通過(guò)讀取圖片的屬性值去獲取,一般圖片的屬性值就包括了圖片占用空間的大小的參數(shù)。當(dāng)然,在實(shí)際應(yīng)用中,以Android系統(tǒng)為例可以調(diào)用File.length()方法去獲取圖片的大小。對(duì)于其他系統(tǒng),也可以調(diào)用相應(yīng)系統(tǒng)的方法去獲取圖片的大小。步驟130,啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;在待上傳圖片的大小大于第一閾值時(shí),本發(fā)明實(shí)施例則啟動(dòng)圖片圖片編輯模式,然后在圖片圖片編輯模式對(duì)應(yīng)的內(nèi)存中載入所述待上傳圖片。在本發(fā)明實(shí)施例中,可以在圖片編輯模式中提供一個(gè)編輯框。如果待上傳圖片只有一張圖,則在圖片編輯模式的編輯框中顯示所述待上傳圖片。如果待上傳圖片有多張圖,則選擇一張圖在圖片編輯模式的編輯框中顯示,其他的待上傳圖片則在圖片編輯模式的待選框中展示。其中在待選框中,展示的是該待上傳圖片的縮略圖,即對(duì)于未展示在編輯框中的待上傳圖片,獲取該待上傳圖片的縮略圖展示在待選框中。步驟140,對(duì)所述待上傳圖片進(jìn)行編輯;在本發(fā)明實(shí)施例中,可以對(duì)所述待上傳圖片進(jìn)行編輯,該編輯包括對(duì)圖片進(jìn)行剪裁。優(yōu)選地,步驟140包括:子步驟141,通過(guò)預(yù)設(shè)的剪裁模板,對(duì)所述待上傳圖片進(jìn)行剪裁。在本發(fā)明實(shí)施例中,可以預(yù)設(shè)剪裁模板,按照該剪裁模板對(duì)待上傳圖片進(jìn)行剪裁,保留的部分就比原圖小。在實(shí)際應(yīng)用中,很多圖片,比如人物照片,用戶的人物是在中間,而四周的邊緣部分可以剪裁,對(duì)用戶的正常瀏覽影響很小。因此可以預(yù)設(shè)剪裁圖片四周一定寬度的剪裁模板,將該圖片的四周進(jìn)行剪裁。在本發(fā)明實(shí)施例中,預(yù)設(shè)的剪裁模板,在存儲(chǔ)時(shí),其尺寸可能是固定的,但是待上傳的圖片尺寸可能存在差異,與預(yù)先存儲(chǔ)才剪裁模板尺寸不同。那么本發(fā)明實(shí)施例則會(huì)獲取圖片的尺寸,然后將剪裁模板的尺寸調(diào)整為與圖片尺寸大小一樣,然后即可對(duì)圖片進(jìn)行剪裁。優(yōu)選地,在子步驟S141之前,還包括:子步驟A11,識(shí)別所述待上傳圖片的內(nèi)容;子步驟A12,查找與所述內(nèi)容匹配的剪裁模板。在實(shí)際應(yīng)用中,可能圖片的內(nèi)容涉及各種各樣的類型,比如人物照片,動(dòng)物照片等,本發(fā)明實(shí)施例可以針對(duì)不同類型的照片設(shè)置不同的剪裁模板。當(dāng)然,對(duì)于某個(gè)類型的照片,還可以設(shè)置子類型,針對(duì)各個(gè)子類型設(shè)置相應(yīng)的剪裁模板。比如人物照片,以上下左右方向?yàn)槔?,如果人物靠左,則剪裁模板的左邊剪裁寬度小,右邊剪裁寬度大。如果人物靠右,則剪裁模板右邊的剪裁寬度小,左邊剪裁寬度大。如果人物靠上,則剪裁模板上邊剪裁寬度小,下邊剪裁寬度大。如果人物靠下邊,則剪裁模板下邊剪裁寬度小,上邊剪裁寬度大。那么本發(fā)明可以通過(guò)圖片識(shí)別方法,識(shí)別圖片的內(nèi)容,然后根據(jù)該內(nèi)容去判斷采用哪種剪裁模板。比如識(shí)別圖片是人物照片,則識(shí)別到人物圖片后,判斷人物圖片的邊緣與哪邊近,然后可按照前述規(guī)則去選擇剪裁模板。優(yōu)選地,所述對(duì)所述待上傳圖片進(jìn)行編輯的步驟,包括:子步驟143,讀取預(yù)設(shè)的至少一個(gè)剪裁模板,并在第一窗口中進(jìn)行顯示;子步驟144,根據(jù)用戶在第一窗口中選擇的剪裁模板,對(duì)所述圖片進(jìn)行編輯。在本發(fā)明實(shí)施例中,在圖片圖片編輯模式中,還可以提供一個(gè)第一窗口,該窗口中可以展示各種剪裁模板。當(dāng)然,本發(fā)明實(shí)施例中還預(yù)設(shè)了各種剪裁模板,因此可以讀取這些剪裁模板,然后將這些剪裁模板在第一窗口中進(jìn)行縮略展示,當(dāng)然,實(shí)際應(yīng)用中,第一窗口中的展示區(qū)域比較小,無(wú)法展示全部的剪裁模板,則將未展示的剪裁模板的縮略圖放在后臺(tái)內(nèi)存中,然后在第一窗口中設(shè)置滾動(dòng)條,用戶可以通過(guò)滑動(dòng)滾動(dòng)條選擇剪裁模板。在本發(fā)明實(shí)施例中,該剪裁模板可以包括個(gè)性化內(nèi)容,比如增加背景框等。因此,用戶可以在上傳流程中選擇將圖片進(jìn)行個(gè)性化編輯,不用用戶通過(guò)其他編輯軟件對(duì)圖片進(jìn)行編輯后再上傳。優(yōu)選地,所述對(duì)所述待上傳圖片進(jìn)行編輯的步驟,包括:子步驟143,在所述圖片編輯模式的編輯界面中,對(duì)所述圖片進(jìn)行編輯操作在本發(fā)明實(shí)施例中,在圖片編輯模式中,可設(shè)置編輯界面,然后該圖片則加載到該編輯界面中進(jìn)行顯示,然后還可為用戶提供編輯工具,比如畫筆、涂鴉、顏色等工具,當(dāng)然還可包括裁剪等工具。使用戶可以對(duì)待上傳圖片進(jìn)行編輯??梢岳斫?,本發(fā)明實(shí)施例的編輯操作可以包括裁剪操作,也可以包括對(duì)圖片內(nèi)容的修改操作(如涂鴉等操作)。因此,本發(fā)明實(shí)施例的用戶可以在上傳流程中,按其個(gè)性化需求對(duì)其需要上傳的圖片進(jìn)行編輯,使上傳的圖片更符合用戶需求,不用用戶采用其他軟件對(duì)圖片進(jìn)行編輯后,再打開上傳軟件,上傳圖片,節(jié)省用戶的操作。在本發(fā)明實(shí)施例中,對(duì)于圖片編輯模式,在編輯完畢之后,會(huì)將編輯后的圖片存入第一緩存空間,以待步驟150對(duì)該第一緩存空間的圖片進(jìn)行壓縮。因?yàn)閷?duì)圖片的壓縮,需要先將圖片緩存到緩存中,所以本發(fā)明為了快捷的對(duì)圖片進(jìn)行壓縮,直接將編輯完的圖片存入第一緩存空間中。步驟150,在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;對(duì)于編輯后的存在緩存中的圖片,本發(fā)明實(shí)施例可以對(duì)該圖片再進(jìn)行 壓縮。在實(shí)際應(yīng)用中可以采用各種壓縮算法對(duì)該圖片進(jìn)行壓縮,該壓縮算法是為了消除圖片中的冗余,從而可以降低圖片的數(shù)據(jù)量的大小。比如霍夫曼編碼壓縮算法,其是一種基于統(tǒng)計(jì)特性的可變長(zhǎng)的編碼方法,屬于無(wú)損編碼的一種。當(dāng)然,本發(fā)明不對(duì)具體采用何種算法加以限制。當(dāng)然,本發(fā)明實(shí)施例對(duì)于采用RGB通道(紅(R)、綠(G)、藍(lán)(B)三個(gè)顏色通道)的圖片,還可采用其他壓縮算法,使對(duì)編輯后的圖片壓縮后,其數(shù)量量變小,比如采用如下方法:(1)讀取編輯后的圖片,獲取編輯后的圖片的RGB顏色空間轉(zhuǎn)換為HSV顏色空間;(2)利用步驟(1)中轉(zhuǎn)換為HSV(HSV(Hue,Saturation,Value)是根據(jù)顏色的直觀特性得到的六角錐體模型(HexconeModel))顏色空間后的圖片,獲取其像素?cái)?shù)據(jù),并通過(guò)八叉樹法設(shè)置調(diào)色板;(3)利用步驟(2)獲得的調(diào)色板在步驟(1)所獲取的圖片上建立像素調(diào)色板索引,得到索引圖片;(4)利用步驟(2)獲得的調(diào)色板對(duì)步驟(3)所獲取的索引圖片中的像素?cái)?shù)據(jù)進(jìn)行數(shù)據(jù)壓縮;(5)生成最終壓縮的PNG(PortableNetworkGraphicFormat,可移植網(wǎng)絡(luò)圖形格式)格式圖片。通過(guò)上述步驟將RGB的圖片中的冗余數(shù)據(jù)塊進(jìn)行了刪除,得到的PNG格式的圖片格式比原數(shù)據(jù)量小。當(dāng)然,除了采用上述算法,將圖片中的冗余進(jìn)行消除的壓縮。在本發(fā)明實(shí)施例中,還可以采用縮小圖片的尺寸方式壓縮圖片,比如尺寸縮小到原圖片的80%,則尺寸縮小后的圖片的數(shù)據(jù)量必然減少。當(dāng)然,本發(fā)明實(shí)施例可以結(jié)合對(duì)圖片的冗余進(jìn)行消除的壓縮過(guò)程和縮小圖片尺寸的壓縮過(guò)程,也可以單獨(dú)使用上述兩者的壓縮過(guò)程,本發(fā)明實(shí)施例不對(duì)其加以限制。步驟160,將壓縮后的圖片上傳。在本發(fā)明實(shí)施例中,對(duì)于壓縮后的圖片,其可以緩存到第二緩存空間, 然后本發(fā)明實(shí)施例可以利用該緩存空間中,實(shí)現(xiàn)將圖片上傳的過(guò)程。在實(shí)際應(yīng)用中,本發(fā)明實(shí)施例可以采用http協(xié)議,將圖片以數(shù)據(jù)流的方式,通過(guò)post請(qǐng)求發(fā)送到服務(wù)器。服務(wù)器接收到該圖片之后,則可以將該圖片存儲(chǔ)至指定位置。然后服務(wù)器的頁(yè)面或者app可以從該指定位置調(diào)用該圖片。使客戶端后續(xù)可以通過(guò)頁(yè)面或者app瀏覽該圖片。當(dāng)然,本發(fā)明實(shí)施例中,可以對(duì)壓縮后的圖片,進(jìn)行分段上傳,避免一次性將較多的數(shù)據(jù)進(jìn)行上傳,導(dǎo)致帶寬的負(fù)荷較大。服務(wù)器接收到各個(gè)分段之后,再進(jìn)行合并,得到完整的圖片。本發(fā)明實(shí)施例可以在接收到圖片上傳指令后,對(duì)于大小超過(guò)第一閾值,如果超過(guò)第一閾值,因此,本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,對(duì)圖片先編輯再壓縮,也即本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,對(duì)圖片進(jìn)行兩次降低數(shù)據(jù)量的操作,降低圖片大小,從而降低流量的占用以及降低網(wǎng)絡(luò)帶寬的占用。另外,本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,給用戶提供一個(gè)可編輯界面,讓用戶可以按照自己的需要,個(gè)性化的將圖片進(jìn)行剪裁和涂鴉,能夠讓用戶在上傳流程中就能實(shí)現(xiàn)上傳圖片的個(gè)性化需求,降低用戶的操作繁瑣度。實(shí)施例二參照?qǐng)D2,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種圖片上傳方法實(shí)施例的步驟流程圖,具體可以包括如下步驟:步驟210,客戶端側(cè)接收?qǐng)D片上傳指令;步驟212,判斷當(dāng)前的網(wǎng)絡(luò)是否為移動(dòng)數(shù)據(jù)網(wǎng)絡(luò);如果是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),則步驟214。步驟214,判斷圖片的大小是否超過(guò)第一閾值;如果超過(guò)第一閾值,則進(jìn)入步驟216。步驟216,啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;步驟218,對(duì)所述待上傳圖片進(jìn)行編輯;步驟220,以編輯后的圖片作為文件,調(diào)用文件壓縮接口對(duì)所述圖片進(jìn)行壓縮,得到壓縮文件。在本發(fā)明實(shí)施例中,對(duì)于編輯后的圖片,可以將存在第一緩存空間中的圖片以文件的形式,調(diào)用文件壓縮接口對(duì)該圖片進(jìn)行壓縮,比如調(diào)用rar(RAR是一種文件壓縮與歸檔的私有專利壓縮格式。)壓縮接口,將圖片壓縮為rar格式的壓縮文件?;蛘哒{(diào)用zip(ZIP是一個(gè)計(jì)算機(jī)文件的壓縮的算法)壓縮接口,將圖片壓縮為zip格式的壓縮文件。步驟222,以壓縮文件的形式,將圖片上傳。然后即可以壓縮文件的形式,將圖片上傳至服務(wù)器中。當(dāng)然,在本發(fā)明實(shí)施例中,客戶端還會(huì)向服務(wù)器上傳一個(gè)通知標(biāo)識(shí),表示該壓縮文件是圖片,服務(wù)器需要解壓。在實(shí)際應(yīng)用中,該壓縮文件可以寫入post請(qǐng)求的tcp報(bào)文的數(shù)據(jù)區(qū)中,然后在tcp報(bào)文頭部,寫入前述通知標(biāo)識(shí)。步驟224,在服務(wù)器側(cè),調(diào)用文件解壓縮接口對(duì)收到的壓縮文件進(jìn)行解壓縮,并將解壓縮得到的圖片放入指定位置由于步驟222中服務(wù)器收到的是壓縮文件,比如rar壓縮格式或者zip壓縮格式的壓縮文件,該文件無(wú)法以圖片的形式之間瀏覽,服務(wù)器則會(huì)按照相應(yīng)的壓縮格式對(duì)該壓縮文件進(jìn)行解壓。比如對(duì)于rar壓縮格式的壓縮文件,可以調(diào)用rar解壓縮接口對(duì)其進(jìn)行解壓,得到可以直接瀏覽的圖片。又比如對(duì)于zip壓縮格式的壓縮文件,則可以調(diào)用zip解壓縮接口對(duì)該壓縮文件進(jìn)行解壓。在本發(fā)明實(shí)施例中,服務(wù)器可以從收到的post請(qǐng)求的數(shù)據(jù)區(qū),讀取該壓縮文件的數(shù)據(jù)流,然后得到該壓縮文件,從而可以對(duì)其進(jìn)行解壓。對(duì)于解壓得到的圖片,服務(wù)器則可以將其放入指定位置。然后服務(wù)器的頁(yè)面或者app可以從該指定位置調(diào)用該圖片。使客戶端后續(xù)可以通過(guò)頁(yè)面或者app瀏覽該圖片。本發(fā)明實(shí)施例可以在接收到圖片上傳指令后,對(duì)于大小超過(guò)第一閾 值,如果超過(guò)第一閾值,因此,本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,對(duì)圖片先編輯再壓縮,也即本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,對(duì)圖片進(jìn)行兩次降低數(shù)據(jù)量的操作,降低圖片大小,從而降低流量的占用以及降低網(wǎng)絡(luò)帶寬的占用。另外,本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,給用戶提供一個(gè)可編輯界面,讓用戶可以按照自己的需要,個(gè)性化的將圖片進(jìn)行剪裁和涂鴉,能夠讓用戶在上傳流程中就能實(shí)現(xiàn)上傳圖片的個(gè)性化需求,降低用戶的操作繁瑣度。實(shí)施例三參照?qǐng)D3,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種圖片上傳裝置實(shí)施例的步驟流程圖,具體可以包括如下模塊:指令接收模塊310,適于接收?qǐng)D片上傳指令;大小判斷模塊320,適于判斷圖片的大小是否超過(guò)第一閾值;編輯模塊啟動(dòng)模塊330,適于如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;編輯模塊340,適于對(duì)所述待上傳圖片進(jìn)行編輯;壓縮模塊350,適于在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;上傳模塊360,適于將壓縮后的圖片上傳。優(yōu)選地,所述編輯模塊包括:第一編輯模塊,適于通過(guò)預(yù)設(shè)的剪裁模板,對(duì)所述待上傳圖片進(jìn)行剪裁。優(yōu)選地,在第一編輯模塊之前,還包括:內(nèi)容識(shí)別模塊,適于識(shí)別所述待上傳圖片的內(nèi)容;模板查找模塊,適于查找與所述內(nèi)容匹配的剪裁模板。優(yōu)選地,所述編輯模塊包括:模板讀取模塊,適于讀取預(yù)設(shè)的至少一個(gè)剪裁模板,并在第一窗口中進(jìn)行顯示;模板剪裁模塊,適于根據(jù)用戶在第一窗口中選擇的剪裁模板,對(duì)所述圖片進(jìn)行編輯。優(yōu)選地,所述編輯模塊包括:剪裁模塊,適于在所述圖片編輯模式的編輯界面中,對(duì)所述圖片進(jìn)行編輯操作優(yōu)選地,所述壓縮模塊包括:類型判斷模塊,適于獲取所述圖片的類型;第一壓縮模塊,適于根據(jù)所述圖片的類型,選擇相應(yīng)的圖片壓縮算法對(duì)所述圖片進(jìn)行壓縮。優(yōu)選地,所述編輯模塊啟動(dòng)模塊之前,還包括:網(wǎng)絡(luò)判斷模塊,適于判斷當(dāng)前的網(wǎng)絡(luò)是否為移動(dòng)數(shù)據(jù)網(wǎng)絡(luò);大小判斷模塊,適于如果是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),則進(jìn)入判斷圖片的大小是否超過(guò)第一閾值的步驟。本發(fā)明實(shí)施例可以在接收到圖片上傳指令后,對(duì)于大小超過(guò)第一閾值,如果超過(guò)第一閾值,因此,本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,對(duì)圖片先編輯再壓縮,也即本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,對(duì)圖片進(jìn)行兩次降低數(shù)據(jù)量的操作,降低圖片大小,從而降低流量的占用以及降低網(wǎng)絡(luò)帶寬的占用。另外,本發(fā)明實(shí)施例可以在一個(gè)上傳流程中,給用戶提供一個(gè)可編輯界面,讓用戶可以按照自己的需要,個(gè)性化的將圖片進(jìn)行剪裁和涂鴉,能夠讓用戶在上傳流程中就能實(shí)現(xiàn)上傳圖片的個(gè)性化需求,降低用戶的操作繁瑣度。實(shí)施例四參照?qǐng)D4,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種圖片上傳系統(tǒng)實(shí)施例的步驟流程圖,具體可以包括:客戶端400和服務(wù)器450;所述客戶端400包括:指令接收模塊410,適于接收?qǐng)D片上傳指令;網(wǎng)絡(luò)判斷模塊412,適于判斷當(dāng)前的網(wǎng)絡(luò)是否為移動(dòng)數(shù)據(jù)網(wǎng)絡(luò);如果是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)則進(jìn)入大小判斷模塊414大小判斷模塊414,適于判斷圖片的大小是否超過(guò)第一閾值;編輯模塊啟動(dòng)模塊416,適于如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;編輯模塊418,適于對(duì)所述待上傳圖片進(jìn)行編輯;壓縮模塊420,具體包括:文件壓縮模塊B11,適于以編輯后的圖片作為文件,調(diào)用文件壓縮接口對(duì)所述圖片進(jìn)行壓縮,得到壓縮文件。上傳模塊422,具體包括:文件上傳模塊B21,適于以壓縮文件的形式,將圖片上傳。所述服務(wù)器450包括:解壓模塊B31,適于調(diào)用文件解壓縮接口對(duì)收到的壓縮文件進(jìn)行解壓縮,并將解壓縮得到的圖片放入指定位置。實(shí)施例五參照?qǐng)D5,其示出了本發(fā)明實(shí)施例的一種圖片上傳設(shè)備的結(jié)構(gòu)示意圖,所述圖片上傳設(shè)備500具體可以包括:存儲(chǔ)器510和處理器520;所述存儲(chǔ)器510用于存儲(chǔ)可執(zhí)行代碼;所述處理器520用于執(zhí)行所述可執(zhí)行代碼,所述可執(zhí)行代碼執(zhí)行包括以下步驟的方法:接收?qǐng)D片上傳指令;判斷圖片的大小是否超過(guò)第一閾值;如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;對(duì)所述待上傳圖片進(jìn)行編輯;在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;將壓縮后的圖片上傳。當(dāng)然,所述可執(zhí)行代碼還可以執(zhí)行前述任意步驟的方法,本發(fā)明實(shí)施例不對(duì)其加以限制。對(duì)于裝置實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施例的部分說(shuō)明即可。在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語(yǔ)言。應(yīng)當(dāng)明白,可以利用各種編程語(yǔ)言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語(yǔ)言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。在此處所提供的說(shuō)明書中,說(shuō)明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒(méi)有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說(shuō)明書的理解。類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說(shuō),如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過(guò)程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說(shuō)明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過(guò)程或單元進(jìn)行組合。除非另外明確陳述,本說(shuō) 明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來(lái)代替。此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來(lái)使用。本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來(lái)實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的圖片上傳設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說(shuō)明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來(lái)實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過(guò)同一個(gè)硬件項(xiàng)來(lái)具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。本發(fā)明公開了A1、一種圖片上傳方法,包括:接收?qǐng)D片上傳指令;判斷圖片的大小是否超過(guò)第一閾值;如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;對(duì)所述待上傳圖片進(jìn)行編輯;在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;將壓縮后的圖片上傳。A2、根據(jù)A1所述的方法,所述對(duì)所述待上傳圖片進(jìn)行編輯包括:通過(guò)預(yù)設(shè)的剪裁模板,對(duì)所述待上傳圖片進(jìn)行剪裁。A3、根據(jù)A2所述的方法,在通過(guò)預(yù)設(shè)的剪裁模板,對(duì)所述待上傳圖片進(jìn)行剪裁之前,還包括:識(shí)別所述待上傳圖片的內(nèi)容;查找與所述內(nèi)容匹配的剪裁模板。A4、根據(jù)A1所述的方法,所述對(duì)所述待上傳圖片進(jìn)行編輯的步驟,包括:讀取預(yù)設(shè)的至少一個(gè)剪裁模板,并在第一窗口中進(jìn)行顯示;根據(jù)用戶在第一窗口中選擇的剪裁模板,對(duì)所述圖片進(jìn)行編輯。A5、根據(jù)A1所述的方法,所述對(duì)所述待上傳圖片進(jìn)行編輯的步驟,包括:在所述圖片編輯模式的編輯界面中,對(duì)所述圖片進(jìn)行編輯操作。A6、根據(jù)A1所述的方法,所述判斷圖片的大小是否超過(guò)第一閾值的步驟之前,還包括:判斷當(dāng)前的網(wǎng)絡(luò)是否為移動(dòng)數(shù)據(jù)網(wǎng)絡(luò);如果是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),則進(jìn)入判斷圖片的大小是否超過(guò)第一閾值的步驟。A7、根據(jù)A1所述的方法,所述在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮的步驟,包括:以編輯后的圖片作為文件,調(diào)用文件壓縮接口對(duì)所述圖片進(jìn)行壓縮,得到壓縮文件;進(jìn)一步的,所述將壓縮后的圖片上傳包括:以壓縮文件的形式,將圖片上傳。A8、根據(jù)A7所述的方法,在將壓縮后的圖片上傳之后,還包括:在服務(wù)器側(cè),調(diào)用文件解壓縮接口對(duì)收到的壓縮文件進(jìn)行解壓縮,并將解壓縮得到的圖片放入指定位置。本發(fā)明還公開了B9、一種圖片上傳裝置,包括:指令接收模塊,適于接收?qǐng)D片上傳指令;大小判斷模塊,適于判斷圖片的大小是否超過(guò)第一閾值;編輯模塊啟動(dòng)模塊,適于如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;編輯模塊,適于對(duì)所述待上傳圖片進(jìn)行編輯;壓縮模塊,適于在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;上傳模塊,適于將壓縮后的圖片上傳。B10、根據(jù)B9所述的裝置,所述編輯模塊包括:第一編輯模塊,適于通過(guò)預(yù)設(shè)的剪裁模板,對(duì)所述待上傳圖片進(jìn)行剪裁。B11、根據(jù)B10所述的裝置,在第一編輯模塊之前,還包括:內(nèi)容識(shí)別模塊,適于識(shí)別所述待上傳圖片的內(nèi)容;模板查找模塊,適于查找與所述內(nèi)容匹配的剪裁模板。B12、根據(jù)B9所述的裝置,所述編輯模塊包括:模板讀取模塊,適于讀取預(yù)設(shè)的至少一個(gè)剪裁模板,并在第一窗口中進(jìn)行顯示;模板剪裁模塊,適于根據(jù)用戶在第一窗口中選擇的剪裁模板,對(duì)所述圖片進(jìn)行編輯。B13、根據(jù)B9所述的裝置,所述編輯模塊包括:剪裁模塊,適于在所述圖片編輯模式的編輯界面中,對(duì)所述圖片進(jìn)行編輯操作B14、根據(jù)B9所述的裝置,所述編輯模塊啟動(dòng)模塊之前,還包括:網(wǎng)絡(luò)判斷模塊,適于判斷當(dāng)前的網(wǎng)絡(luò)是否為移動(dòng)數(shù)據(jù)網(wǎng)絡(luò);如果是移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),則進(jìn)入大小判斷模塊。B15、根據(jù)B9所述的裝置,所述壓縮模塊包括:文件壓縮模塊,適于以編輯后的圖片作為文件,調(diào)用文件壓縮接口對(duì)所述圖片進(jìn)行壓縮,得到壓縮文件;進(jìn)一步的,所述上傳模塊包括:文件上傳模塊,適于以壓縮文件的形式,將圖片上傳。B16、根據(jù)B15所述的裝置,還包括在服務(wù)器側(cè)的解壓模塊,適于調(diào)用文件解壓縮接口對(duì)收到的壓縮文件進(jìn)行解壓縮,并將解壓縮得到的圖片放入指定位置。本發(fā)明還公開了C17、一種圖片上傳設(shè)備,包括:存儲(chǔ)器和處理器;所述存儲(chǔ)器用于存儲(chǔ)可執(zhí)行代碼;所述處理器用于執(zhí)行所述可執(zhí)行代碼,所述可執(zhí)行代碼執(zhí)行包括以下步驟的方法:接收?qǐng)D片上傳指令;判斷圖片的大小是否超過(guò)第一閾值;如果超過(guò)第一閾值,則啟動(dòng)圖片編輯模式,并載入所述待上傳圖片;對(duì)所述待上傳圖片進(jìn)行編輯;在編輯完成之后,對(duì)編輯后的圖片進(jìn)行壓縮;將壓縮后的圖片上傳。當(dāng)前第1頁(yè)1 2 3 當(dāng)前第1頁(yè)1 2 3