2019年12月7日 星期六

[小技巧]如何在VirtualBox的內外拖放大量檔案

最近想要跑深度學習,需要傳送大量圖片到虛擬機的Linux中

可是VirtualBox卻無法一次拖動89825張圖片


[小技巧]解決CentOS無法拖放檔案與共享資料夾的問題

今天在使用VirtualBox裝CentOS時,遇到無法共用剪貼簿以及從實體Windows7拖拉檔案到虛擬機的情況(即使設定上已做開啟)

[小技巧]解決CentOS 的fail to load selinux policy. freezing問題

剛剛在使用VirtualBox載入CentOS時,發現它一直轉圈圈,跑很久都沒辦法成功開機,所以按Esc查看是否有報錯,結果看到了 fail to load selinux policy. freezing  的訊息。


2019年11月24日 星期日

[不專業研究]for、while、goto效能評比

本文同步自友站  goto語法教學網 發佈

我們常常聽說goto是一把雙面刃,它可以在程式碼中像任意門一樣穿梭自如,但是卻破壞了程式碼的結構與可讀性。

但是,goto的優點只有跳躍而已嗎?

本文將設計針對for、while、goto的效能做比較的實驗,探討goto是否能對程式碼的效能進行優化。

2019年10月21日 星期一

[教學]解決使用conda時CondaHTTPError HTTP 000的錯誤

之前在安裝Conda並切換版本至Python3.6時,出現以下錯誤:
"CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://conda.anaconda.org/anaconda/linux-64/repodata.json> Elapsed: -"

如果排除是防火牆阻擋更新的問題,而且輸入
"conda config --set ssl_verify no" 
也無法解決這個問題時,很有可能是你的環境變數沒有安裝好。

請務必要記得添加"\Anaconda3\Library\bin"

添加完之後,這個問題十有八九得以解決。

=====分隔線=====
如果覺得這篇文有幫助到你們的話,請留言或幫忙按個廣告吧。

您的支持是我寫文的最大動力。

如果依然失敗了,也請留言讓我知道,看看哪個環節出了問題,我有看到就會回。


希望這篇文有幫助到各位ξ( ✿>◡❛)

2019年9月29日 星期日

[密技]如何把blogger文章嵌入到其他頁面或網站

網路上都很多把外部連接嵌入到blogger上,但是似乎找不到把自己blogger連接嵌入到其他網頁的方法。

這裡提供一個自行研發的方法。

首先,到自己要轉出的頁面
範例網址:https://corettainformation.blogspot.com/2019/06/cc_23.html

然後按F12開啟主控台,輸入:

 var mydgetdivdata=document.getElementsByClassName('blog-posts hfeed')[0].innerHTML;

document.write("<textarea id='getdivtest0001' cols='1024' rows='512'></textarea> <script>document.getElementById('getdivtest0001').value=mydgetdivdata<\/script>");


然後會跑出這串文字,就是你那篇文章的嵌入程式碼

現在試著把這串文字轉貼到自己的其他頁面
測試結果正常

現在把這串文字轉貼到其他網誌試試
轉貼成功

[小技巧]解決Word圖片被腰斬的問題

在使用Word時有時候會發生圖片被腰斬的問題

這通常是因為該段落被設定了固定行高


此時只要選取圖片,按下常用/段落,選擇右下角的箭頭,設定為單行間距

圖片就變為正常的樣子了


=====分隔線=====
如果覺得這篇文有幫助到你們的話,請留言或幫忙按個廣告吧。

您的支持是我寫文的最大動力。

如果依然失敗了,也請留言讓我知道,看看哪個環節出了問題,我有看到就會回。


希望這篇文有幫助到各位ξ( ✿>◡❛)

2019年9月15日 星期日

[小技巧]如何在Clip Studio Paint使用螢光筆

標題:[小技巧]如何在Clip Studio Paint使用螢光筆
最近一項新出現的繪圖軟體Clip Studio Paint(CSP)很快的在全世界已有上百萬的市占率,本篇將介紹如何用Clip Studio Paint模擬出螢光筆的功能。

首先,開啟你需要用螢光筆畫線的圖片,然後新增一個新的點陣圖層

新增完之後將圖層的混合模式設定為色彩增值

之後使用任一普通的畫筆(直線工具也可以),此範例使用平塗筆,色彩設定為黃色

然後在色彩增值的圖層上畫線,會發現筆刷變成螢光筆了

如果這篇的觸擊率高的話將另外發幾篇關於這項軟體的介紹

2019年9月10日 星期二

[密技]如何使blogger擁有置頂文章

blogger都沒有置頂文章的功能,很不方便。

但是這個網誌卻有置頂文章

分享一下我是怎麼做到的

首先,隨便發一篇你要的文章出去,然後回去文章編輯區編輯文章,注意文章編輯區的右側有個日期與時間。

然後,更改發布日期到遙遠的未來。

由於blogger是按照日期排序的,所已發布時間越後面排的越前面。

這樣子,blogger的置頂文章就完成了



2019年8月3日 星期六

css選擇器是什麼?該怎麼用


css又被稱為網頁的美容/化妝師,今天來介紹一下怎麼給html添加樣式

閱讀這篇文章前需要對標籤選擇器,類選擇器和ID選擇器有基本概念,並且閱讀過上一篇文(css優先級)

如果已經有概念或是曾經使用過,那麼就達到學習門檻囉



這是一個html標籤的結構圖
當我們想要給hello,world添加顏色的時候,我們可以選擇這樣做


沒錯,這就是所謂的行內樣式,這樣做的缺點就是如果有很多

個div,就要寫很多次行內樣式,如果要修改的話會找很久,

而優點就是立即見效,因為他的優先級很高,也不用考慮結構

問題,如果配上UI庫來使用的話,能夠很快的產出東西,對

維護性不要求的場合非常方便,這也是一般初學者最先接觸的

設置樣式的方法


如果遇到很多個div, 他們有共通的樣式,就可以考慮標籤選

擇器,只要把標籤名寫上去就大功告成,他的效果為全部的

div都套用紅色字體


再來是比較進階一點的情境,div一層包一層的時候,上圖可

以發現一層包了一層又包一層,在html裡面,標籤是有關係

的,包來包去的關係,就叫父子級,我們把最外層的div命名

為outer(外),而裡面(中),就叫做outer的子級,而更裡面

內)就叫做outer的孫子級,今天我們只想給子元素(中)添

加顏色,不想動到孫子級(內)的時候,這時就可以選用  > 

這個符號,叫做子級選擇器, 他的效果就是輩份比自己小一

階的元素能夠得到效果,而小兩階或三階等孫輩份元素都套用

不到


那麼,如果我想讓所有我的後代都能得到效果呢,這時可以這

樣寫,只要加個空格就OK,意思就是輩份比outer小的div都

能得到效果


如果我想讓某個元素有顏色,但我又不想用行內樣式,我能怎麼做呢?

可以選擇類選擇器或ID選擇器,而類選擇器的優點是效能高

速度快,可複用性強,ID選則器的優點是優先級高,立即見

效,缺點是這個元素在網頁上的身份必須獨一無二(比方說L

OGO圖,或主標題),如果我只是想添加藍色,而且我確定

我會使用很多次藍色,那麼就不是獨一無二的元素,所以這裡

用類選擇器比較適合


類選擇器和ID選擇器我都知道了,還有沒有其他方法?

有,li:nth-child(2)

意思就是li元素裡的所有子元素的第二個,套用效果

當使用這種方法的時候,可能會遇到一些問題,比方說新增

或刪除標籤結構的時候,這時原本的第二個元素可能就變成

第三個元素或第一個元素,要怎麼辦呢?



這時就可以使用nth-of-type,就不是ul內的所有子元素的第二

個,而是ul內class相同或tag相同的元素的第二個,這樣一

來,就算新增元素,只要他不是相同的類型,就不會影響計



而數字可以寫成n,2n,3n-1等等的方式,製作有規律樣式的表格很方便,比方說條紋顏色


接下來介紹的這個我都稱呼為兄弟選擇器,或比鄰選擇器,他

就是可以選到鄰居,範例的意思就是.first後面(只有後面,前

面沒用)緊跟著的span元素能得到效果(對,只能對一個元素

有效),需要注意的地方是他們是兄弟關係,不是父子關係


*,這個東西叫做通配符,或是通用選擇器,意思就是,全部,我全都要.jpg

不管你是tag還是class還是id啥的,只要你在文檔裡面,就連

html和body標籤都無法倖免,通通都設為藍色文字顏色,但

相對的,這個選擇器的優先級很低


*除了拿來初始化tag的margin和border和padding以外就沒有用了?
are you sure?

其實可以這麼用,就是某個部分裡面的全部我都一次設定,也是相當實用的寫法


有時候,我需要選擇一大包東西,但有些不是我想要的,怎麼辦呢?

這時候就輪到not選擇器出場了,not的括號裡面可以寫各種

條件,讓你過濾掉不想要的元素




最後再來介紹一下中括號三兄弟,他的缺點是效能差,但優點

對付表單元素很好用,有時候也會有class取的沒有那麼統一

的時候,總體來說還是非常有機會能派上用場的

*=的意思就是  "包含"  class*='funny'就是class裡面有包含funny的元素都能套用到效果


而  ^= 的意思就是,開頭為,也就是funny開頭的都套用效果


而   $= 的意思是,結尾為,也就是結尾為last的元素都套用效果




2019年7月9日 星期二

[密技]解決blogger圖片模糊看不清楚的問題

在blogger上的圖片樣式明明都選擇特大張了,卻還是看不清楚。

圖片太小了,被縮放過了。

但是如果選擇原始大小的話,版面會超出去,怎麼辦呢?


有一個密技可以解決這個問題。

我們在blogger的管理介面按主題/自訂。

然後按進階/新增CSS

在裡面輸入「.post-body img {max-width: 100%;}

它的意思是圖片超出頁面時會自動縮放圖片為版面大小。

然後回到文章編輯區,把圖片大小設定為原始大小,然後按預覽。

這時就會發現圖片可以自動縮放為版面大小了,而且比選項中的「特大」來得大張,看得更清楚了。


2019年7月7日 星期日

使用Keras卷積神經網路辨別肺部醫學影像(五)

上一張「使用Keras卷積神經網路辨別肺部醫學影像(四)

在上一章,我們撰寫了訓練檔的程式碼,現在來執行它,請注意,第一次執行時,其中的
from keras.models import load_model 
這一行請先註解掉。

執行時會出現這個畫面。

請稍等一會兒,因為它需要訓練很長的一段時間。

解析:
Epoch是目前訓練到第幾批次。
538s代表這一批次訓練花了多少時間。
loss是耗費了多少損失。
acc是準確度。

我們暫時不考慮過擬合的問題,因為這只是寫給初學者作練習用的,也只是給我這個初次寫教學文的新手練習寫文章的,我不想搞那麼複雜。

常態上來說,假設訓練模型正確,loss將會逐漸縮小,acc將逐漸增加(此圖片僅為參考,並非此程式的記錄)。
以這張圖片來說,這個訓練模型算合格的了。

由於訓練需要大量時間,而且會消耗許多運算資源,所以可以在訓練到一半時輸出權重:
model.save_weights("Fiborsis_sex.h5")

然後下次執行時把這一行取消註解:
from keras.models import load_model 

這樣子下次訓練時就可以接續上次的存檔繼續訓練,不必從頭開始。

訓練到一定的程度之後,我們輸出結果:

model.save("Fiborsis_sex_result.h5")

稍後就可以在驗證檔中使用它。

我們現在建立一個check0的python檔案,程式碼如下: 


import array
import sys
import numpy as np
import cv2
import glob
#設定亂數
import random
from keras.utils import np_utils
np.random.seed(0)

#設定影像的長寬
imgwidth=128
imgheight=128

#匯入需要用到的東西
from keras.models import Sequential
from keras.layers import Dense,Dropout,Activation,Flatten
from keras.layers import Conv2D,MaxPooling2D,ZeroPadding2D


model=Sequential()

from keras.models import load_model
#載入剛剛訓練好的訓練檔
model=load_model("Fiborsis_sex_result.h5")

print('載入資料')

#建立影像清單
imglist=[]
#匯入一張圖片
filestr='image_F/00001474_000.png'
img = cv2.imread(filestr,cv2.IMREAD_GRAYSCALE)
#resize它的大小
img=cv2.resize(img,(imgwidth,imgheight))
#將像素的數字縮小為0~1之間的數字
img=img/255.0
#將這張圖片加入imglist
imglist.append(img)  
#轉換成numpy的array
x_img_test=np.array(imglist)
#進行reshape動作
x_img_test=np.reshape(x_img_test,(1,imgwidth,imgheight,1))

#預測這張圖是男生還是女生
prediction=model.predict(x_img_test)
#輸出機率
print("男性機率",(int)(prediction[0][0]*100),"%")
print("女性機率",(int)(prediction[0][1]*100),"%")

現在來執行這個程式。
執行結果,這張圖是女性的機率高達99%,而這張圖的確是女性沒錯,所以這次的測試是成功的。

不過記得要拿沒加入訓練檔訓練過的圖片來作測試,比較符合實際狀況,這是為了避免「過擬合」的問題,不過這不是本章所要討論的重點。

好了,本系列「使用Keras卷積神經網路辨別肺部醫學影像」教學文就在此告一段落了,以後有機會再接續著寫下去,那我們下次再見囉。